:root{--color-ink:#111;--color-black:#000;--color-bg:#faf9f7;--color-surface:#fff;--color-neutral:#f1efec;--color-light-gray:#d8d5cf;--color-accent:#8a6d34;--color-accent-dark:#75591f;--color-accent-soft:#b08a48;--color-text:#1b1a18;--color-text-soft:#57534c;--color-text-on-dark:#f4f1ec;--color-text-on-dark-soft:#f4f1ecb8;--color-border:#1111111a;--color-border-dark:#f4f1ec29;--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-accent:"Playfair Display", "Fraunces", Georgia, serif;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--space-7:64px;--space-8:96px;--space-9:128px;--radius-sm:8px;--radius-lg:16px;--radius-pill:999px;--shadow-rest:0 2px 8px #1111110f, 0 10px 30px #1111110f;--shadow-hover:0 6px 16px #1111111a, 0 20px 48px #1111111f;--content-max:1200px;--side-pad:clamp(20px, 5vw, 24px);--nav-height:76px;--ease:cubic-bezier(.22, .61, .36, 1)}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:18px;line-height:1.65}@media (width<=600px){body{font-size:16px}}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}ul{padding:0;list-style:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:4px}::selection{color:var(--color-ink);background-color:#8a6d3438}h1,h2,h3,h4{font-family:var(--font-display);color:var(--color-ink);letter-spacing:-.01em;font-weight:600;line-height:1.12}h1{letter-spacing:-.025em;font-size:clamp(3rem,5.4vw,4.6rem)}h2{letter-spacing:-.02em;font-size:clamp(2.1rem,3.6vw,3rem)}h3{letter-spacing:-.01em;font-size:1.4rem;line-height:1.2}p{max-width:65ch}.br-desktop{display:none}@media (width>=768px){.br-desktop{display:block}}.mark{font-family:var(--font-accent);color:var(--color-accent);font-synthesis:none;font-style:italic;font-weight:700}.section--dark .mark,.hero .mark{color:var(--color-accent-soft)}.circle{font-family:var(--font-accent);color:var(--color-accent);font-synthesis:none;white-space:nowrap;isolation:isolate;padding-inline:.12em;font-style:italic;font-weight:700;display:inline-block;position:relative}.hero .circle,.section--dark .circle{color:var(--color-accent-soft)}.circle__word{z-index:1;position:relative}.circle__svg{z-index:0;width:122%;height:150%;color:var(--color-accent);pointer-events:none;position:absolute;top:50%;left:50%;overflow:visible;transform:translate(-50%,-52%)rotate(-2.5deg)}.hero .circle__svg,.section--dark .circle__svg{color:var(--color-accent-soft)}.circle__path{stroke-dasharray:100;stroke-dashoffset:100px;animation:circle-loop 5.2s var(--ease) infinite;animation-delay:.75s}@keyframes circle-loop{0%{stroke-dashoffset:100px}20%{stroke-dashoffset:0}62%{stroke-dashoffset:0}78%{stroke-dashoffset:-100px}78.01%{stroke-dashoffset:100px}to{stroke-dashoffset:100px}}@media (prefers-reduced-motion:reduce){.circle__path{stroke-dashoffset:0;animation:none}}.container{width:100%;max-width:var(--content-max);padding-inline:var(--side-pad);margin-inline:auto}.section{padding-block:var(--space-8);scroll-margin-top:var(--nav-height)}@media (width<=900px){.section{padding-block:var(--space-7)}}@media (width<=600px){.section{padding-block:var(--space-6)}}.section--neutral{background-color:var(--color-neutral)}.section--dark{background-color:var(--color-ink);color:var(--color-text-on-dark)}.eyebrow{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);font-size:.8rem;font-weight:600;display:inline-block}.reveal{--reveal-distance:40px;--reveal-delay:0s;opacity:0;transform:translateY(var(--reveal-distance));transition:opacity .9s var(--ease), transform .9s var(--ease);transition-delay:var(--reveal-delay);will-change:opacity, transform}.reveal--up{transform:translateY(var(--reveal-distance))}.reveal--left{transform:translateX(calc(var(--reveal-distance) * -1.4))}.reveal--right{transform:translateX(calc(var(--reveal-distance) * 1.4))}.reveal--scale{transform:scale(.94)}.reveal--blur{filter:blur(8px);transition:opacity .8s var(--ease), transform .8s var(--ease), filter .8s var(--ease)}.reveal.is-visible{opacity:1;filter:none;transform:none}.reveal[data-reveal-stagger]{transition-delay:calc(var(--reveal-i,0) * 90ms)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal--up,.reveal--left,.reveal--right,.reveal--scale,.reveal--blur{opacity:1;filter:none;transition:none;transform:none}}.img-frame{border-radius:var(--radius-lg);background-color:var(--color-neutral);position:relative;overflow:hidden}.img-frame img{object-fit:cover;width:100%;height:100%}.skip-link{top:var(--space-2);left:var(--space-2);z-index:1100;background-color:var(--color-ink);color:#fff;border-radius:var(--radius-sm);box-shadow:var(--shadow-hover);opacity:0;transition:transform .2s var(--ease), opacity .2s var(--ease);padding:12px 20px;font-weight:600;position:fixed;transform:translateY(-150%)}.skip-link:focus-visible,.skip-link:focus{opacity:1;outline:2px solid var(--color-accent);outline-offset:2px;transform:translateY(0)}.langpop{z-index:1000;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.langpop__backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0a0a0a9e;position:absolute;inset:0}.langpop__card{background-color:var(--color-surface);border-radius:var(--radius-lg);width:100%;max-width:460px;box-shadow:var(--shadow-hover);padding:clamp(var(--space-6), 5vw, var(--space-7));text-align:center;align-items:center;gap:var(--space-3);animation:langpop-in .3s var(--ease);flex-direction:column;display:flex;position:relative}@keyframes langpop-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}.langpop__brand{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent);font-size:1.1rem;font-weight:600}.langpop__title{font-size:1.5rem;line-height:1.2}.langpop__subtitle{color:var(--color-text-soft);font-size:.98rem;line-height:1.5}.langpop__actions{margin-top:var(--space-3);gap:var(--space-3);flex-direction:column;width:100%;display:flex}.langpop__btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-body);border-radius:var(--radius-sm);border:1px solid var(--color-light-gray);background-color:var(--color-surface);color:var(--color-ink);transition:transform .2s var(--ease), background-color .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease), box-shadow .2s var(--ease);padding:16px 24px;font-size:1.02rem;font-weight:600;display:inline-flex}.langpop__btn:hover{border-color:var(--color-ink);transform:translateY(-2px)}.langpop__btn--primary{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff;box-shadow:0 6px 18px #b08a4847}.langpop__btn--primary:hover{background-color:var(--color-accent-dark);border-color:var(--color-accent-dark)}@media (prefers-reduced-motion:reduce){.langpop__card{animation:none}}.btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-body);letter-spacing:.01em;border-radius:var(--radius-pill);isolation:isolate;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .35s var(--ease), background-color .35s var(--ease), color .3s var(--ease), box-shadow .4s var(--ease), border-color .35s var(--ease);white-space:nowrap;border:1px solid #0000;padding:16px 30px;font-size:.98rem;font-weight:600;line-height:1;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;transition:transform .7s var(--ease);background:linear-gradient(115deg,#0000 20%,#ffffff59 48%,#ffffff0d 56%,#0000 70%);position:absolute;inset:0;transform:translate(-130%)}.btn:hover:before{transform:translate(130%)}.btn:after{content:"";z-index:-1;border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 1px #ffffff80,inset 0 -1px #0000000f}.btn:hover{transform:translateY(-2px)scale(1.015)}.btn:active{transition-duration:.1s;transform:translateY(0)scale(.99)}.btn--primary{background:linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-dark) 100%);color:#fff;box-shadow:0 6px 20px #8a6d3452,0 1px 2px #0003}.btn--primary:hover{box-shadow:0 12px 34px #8a6d3473,0 2px 4px #00000038}.btn--outline{color:var(--color-ink);background-color:#ffffff80;border-color:#11111129;box-shadow:0 4px 16px #1111110f}.btn--outline:after{box-shadow:inset 0 1px #fffc,inset 0 -1px #0000000a}.btn--outline:hover{background-color:var(--color-ink);color:#fff;border-color:var(--color-ink);box-shadow:0 10px 28px #11111138}.btn--ghost-light{color:var(--color-text-on-dark);background-color:#f4f1ec1a;border-color:#f4f1ec52;box-shadow:0 4px 18px #0000002e}.btn--ghost-light:after{box-shadow:inset 0 1px #ffffff38,inset 0 -1px #0000001f}.btn--ghost-light:hover{color:var(--color-ink);background-color:#f4f1ecf2;border-color:#f4f1ecf2;box-shadow:0 10px 30px #00000047}@media (prefers-reduced-motion:reduce){.btn,.btn:before{transition:none}.btn:hover{transform:none}.btn:hover:before{transform:translate(-130%)}}.langsw{border-radius:var(--radius-pill);align-items:center;gap:2px;padding:3px;display:inline-flex}.langsw__btn{font-family:var(--font-body);letter-spacing:.04em;border-radius:var(--radius-pill);color:inherit;transition:background-color .2s var(--ease), color .2s var(--ease);background:0 0;border:none;padding:6px 12px;font-size:.82rem;font-weight:600}.langsw__btn.is-active{background-color:var(--color-accent);color:#fff}.langsw--bar{border:1px solid #f4f1ec47}.langsw--bar .langsw__btn{color:var(--color-text-on-dark-soft)}.langsw--bar .langsw__btn:hover:not(.is-active){color:var(--color-text-on-dark)}.langsw--panel{justify-content:center;gap:var(--space-2);border:1px solid var(--color-border-dark);width:100%;padding:4px}.langsw--panel .langsw__btn{color:var(--color-text-on-dark-soft);flex:1;padding:12px;font-size:.95rem}.langsw--panel .langsw__btn:hover:not(.is-active){color:var(--color-text-on-dark)}.nav{z-index:100;height:var(--nav-height);-webkit-backdrop-filter:blur();backdrop-filter:blur();transition:background-color .3s var(--ease), box-shadow .3s var(--ease), backdrop-filter .3s var(--ease);background-color:#0000;background-image:linear-gradient(#0808088c 0%,#08080800 100%);align-items:center;display:flex;position:fixed;inset:0 0 auto}.nav--scrolled{-webkit-backdrop-filter:blur(12px)saturate(120%);backdrop-filter:blur(12px)saturate(120%);background-color:#0d0d0dd1;background-image:none;box-shadow:0 8px 30px #00000040}.nav__inner{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;display:flex}.nav__brand{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text-on-dark);text-transform:uppercase;font-size:1.3rem;font-weight:600}.nav__links{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.nav__link{color:var(--color-text-on-dark-soft);border-radius:var(--radius-pill);transition:color .2s var(--ease), background-color .2s var(--ease), border-color .2s var(--ease);border:1px solid #0000;padding:7px 14px;font-size:.95rem;font-weight:500;position:relative}.nav__link:hover{color:var(--color-text-on-dark);background-color:#f4f1ec1a;border-color:#f4f1ec47}.nav__cta{margin-left:var(--space-5);align-items:center;gap:var(--space-3);display:flex}.nav__cta .btn{padding:12px 22px;font-size:.9rem}.nav__panel-lang{gap:var(--space-2);flex-direction:column;display:flex}.nav__panel-lang-label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);font-size:.78rem;font-weight:600}.nav__burger{background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0;display:none}.nav__burger span{background-color:var(--color-text-on-dark);width:24px;height:2px;transition:transform .25s var(--ease), opacity .2s var(--ease);border-radius:2px;margin-inline:auto;display:block}.nav--open .nav__burger span:first-child{transform:translateY(7px)rotate(45deg)}.nav--open .nav__burger span:nth-child(2){opacity:0}.nav--open .nav__burger span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav__panel{top:var(--nav-height);width:min(340px,86vw);height:calc(100dvh - var(--nav-height));padding:var(--space-6) var(--space-5);gap:var(--space-5);background-color:var(--color-ink);border-left:1px solid var(--color-border-dark);transition:transform .3s var(--ease);z-index:99;flex-direction:column;display:flex;position:fixed;right:0;transform:translate(100%)}.nav__panel.is-open{transform:translate(0)}.nav__panel-links{gap:var(--space-2);flex-direction:column;display:flex}.nav__panel-link{font-family:var(--font-display);color:var(--color-text-on-dark);padding-block:var(--space-3);border-bottom:1px solid var(--color-border-dark);font-size:1.5rem;font-weight:500}.nav__panel .btn{margin-top:var(--space-3)}.nav__scrim{inset:var(--nav-height) 0 0 0;z-index:98;background-color:#00000080;border:none;position:fixed}@media (width<=860px){.nav__links,.nav__cta{display:none}.nav__burger{display:flex}}@media (width>=861px){.nav__panel,.nav__scrim{display:none}}.hero{min-height:92vh;padding-top:var(--nav-height);align-items:center;display:flex;position:relative;overflow:hidden}.hero__bg{z-index:0;will-change:transform;background-color:#080808;position:absolute;inset:-12% 0}.hero__bg img{object-fit:cover;object-position:center 15%;width:100%;height:100%}@media (width<=767px){.hero__bg img{object-fit:contain;object-position:center center}}.hero__img{animation:22s ease-out forwards hero-kenburns;transform:scale(1.04)}@keyframes hero-kenburns{0%{transform:scale(1.04)}to{transform:scale(1.13)}}.hero__overlay{background:radial-gradient(120% 90% at 50% 42%,#08080847 0%,#08080880 55%,#080808a8 100%),linear-gradient(#08080861 0%,#08080824 32%,#0808083d 72%,#08080894 100%);position:absolute;inset:0}.hero__inner{z-index:1;width:100%;padding-block:var(--space-8);position:relative}.hero__content{text-align:center;align-items:center;gap:var(--space-4);max-width:760px;color:var(--color-text-on-dark);flex-direction:column;margin-inline:auto;display:flex}.hero__eyebrow{color:var(--color-accent-soft)}.hero__in{opacity:0;animation:hero-in .8s var(--ease) forwards;animation-delay:calc(.15s + var(--in-i,0) * .12s);transform:translateY(20px)}@keyframes hero-in{to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.hero__in{opacity:1;animation:none;transform:none}}.hero__title{color:#fff;text-wrap:balance;max-width:20ch;margin-inline:auto;font-weight:600}.hero__subhead{color:#f4f1ece0;max-width:52ch;margin-inline:auto;font-size:1.18rem;line-height:1.6}.hero__actions{justify-content:center;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.hero__nudge{margin-top:var(--space-1);align-items:center;gap:var(--space-2);color:#f4f1ece6;font-size:.95rem;font-weight:500;display:inline-flex}.hero__nudge:before{content:"";background-color:#4caf50;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 3px #4caf5040}.hero__trust{margin-top:var(--space-2);letter-spacing:.02em;color:#f4f1eca8;font-size:.92rem}.hero__scroll{left:50%;bottom:var(--space-5);z-index:1;align-items:center;gap:var(--space-2);color:#f4f1ecb3;transition:color .2s var(--ease);flex-direction:column;display:flex;position:absolute;transform:translate(-50%)}.hero__scroll:hover{color:#fff}.hero__scroll-text{letter-spacing:.18em;text-transform:uppercase;font-size:.72rem}.hero__scroll-line{background-color:#f4f1ec4d;width:1px;height:44px;position:relative;overflow:hidden}.hero__scroll-line:after{content:"";background-color:var(--color-accent);animation:hero-scroll-cue 1.8s var(--ease) infinite;position:absolute;inset:0}@keyframes hero-scroll-cue{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@media (width<=600px){.hero{align-items:flex-start;min-height:82vh}.hero__inner{padding-top:var(--space-4);padding-bottom:var(--space-6)}.hero__subhead{font-size:1.06rem}.hero__actions{width:100%}.hero__actions .btn{flex:auto}.hero__scroll{display:none}}@media (prefers-reduced-motion:reduce){.hero__img{animation:none;transform:none}.hero__scroll-line:after{animation:none}}.section-heading{gap:var(--space-3);flex-direction:column;max-width:60ch;display:flex}.section-heading h2{margin-top:var(--space-1)}.section-heading__intro{color:var(--color-text-soft);font-size:1.08rem}.section-heading--center{text-align:center;align-items:center;margin-inline:auto}.section-heading--center .section-heading__intro{max-width:60ch}.section-heading--dark h2{color:var(--color-text-on-dark)}.section-heading--dark .section-heading__intro{color:var(--color-text-on-dark-soft)}.section-heading--dark .eyebrow{color:var(--color-accent-soft)}.service-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-rest);transition:transform .25s var(--ease), box-shadow .25s var(--ease), opacity .7s var(--ease);flex-direction:column;display:flex;overflow:hidden}.service-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-6px)}.service-card__media{aspect-ratio:4/3;transition:transform .5s var(--ease);border-radius:0}.service-card__media img{will-change:transform;height:116%}.service-card:hover .service-card__media{transform:scale(1.05)}.service-card__body{text-align:center;align-items:center;gap:var(--space-3);padding:var(--space-5);flex-direction:column;display:flex}.service-card__summary{color:var(--color-text-soft);font-size:1rem}.service-card__list{align-items:center;gap:var(--space-2);margin-top:var(--space-1);padding-top:var(--space-4);border-top:1px solid var(--color-border);flex-direction:column;width:100%;display:flex}.service-card__list li{align-items:baseline;gap:var(--space-2);color:var(--color-text);font-size:.96rem;display:inline-flex}.service-card__list li:before{content:"";background-color:var(--color-accent);border-radius:50%;flex-shrink:0;width:7px;height:7px;transform:translateY(-1px)}.services__grid{margin-top:var(--space-6);justify-content:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.services__grid .service-card{flex:0 1 calc((100% - 2 * var(--space-5)) / 3);max-width:420px}@media (width<=1000px){.services__grid .service-card{flex-basis:calc((100% - var(--space-5)) / 2)}}@media (width<=640px){.services__grid{gap:var(--space-4);margin-top:var(--space-6)}.services__grid .service-card{flex-basis:100%;max-width:none}}.about__grid{gap:clamp(var(--space-6), 6vw, var(--space-9));grid-template-columns:.95fr 1.05fr;align-items:center;display:grid}.about__media{aspect-ratio:4/5;box-shadow:var(--shadow-rest)}.about__media img{will-change:transform;height:120%;position:relative;top:-10%}@media (prefers-reduced-motion:reduce){.about__media img{height:100%;top:0}}.about__text{text-align:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.about__text h2{margin-top:var(--space-1)}.about__text p{color:var(--color-text-soft);margin-inline:auto}.about__actions{margin-top:var(--space-2)}@media (width<=860px){.about__grid{gap:var(--space-6);grid-template-columns:1fr}.about__media{aspect-ratio:16/10;order:-1}}.team__grid{margin-top:var(--space-6);gap:var(--space-5);grid-template-columns:repeat(3,1fr);align-items:stretch;display:grid}.team-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-rest);transition:transform .25s var(--ease), box-shadow .25s var(--ease), opacity .7s var(--ease);flex-direction:column;display:flex;overflow:hidden}.team-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-6px)}.team-card__media{aspect-ratio:4/5;border-radius:0}.team-card__media img{transition:transform .5s var(--ease)}.team-card:hover .team-card__media img{transform:scale(1.05)}.team-card__body{text-align:center;align-items:center;gap:var(--space-1);padding:var(--space-5);flex-direction:column;display:flex}.team-card__name{font-size:1.3rem}.team-card__role{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);font-size:.78rem;font-weight:600}.team-card__bio{margin-top:var(--space-2);color:var(--color-text-soft);font-size:.98rem}@media (width<=1000px){.team__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.team__grid{gap:var(--space-4);margin-top:var(--space-6);grid-template-columns:1fr}}.why{isolation:isolate;position:relative;overflow:hidden}.why__bg{z-index:-1;will-change:transform;background-image:linear-gradient(#111111db,#111111eb),url(/photos/barber-styling.webp);background-position:50%;background-size:cover;position:absolute;inset:-14% 0}.why__container{z-index:1;position:relative}.why__grid{margin-top:var(--space-6);gap:var(--space-5);grid-template-columns:repeat(4,1fr);display:grid}.why__point{text-align:center;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-4) var(--space-5);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:transform .35s var(--ease), border-color .35s var(--ease), background-color .35s var(--ease);background:linear-gradient(160deg,#f4f1ec12,#f4f1ec05);border:1px solid #f4f1ec1a;flex-direction:column;display:flex}.why__point:hover{border-color:#b08a4880;transform:translateY(-5px)}.why__num{font-family:var(--font-display);color:var(--color-accent-soft);margin-bottom:var(--space-2);font-size:2.4rem;font-weight:600;line-height:1}.why__label{color:var(--color-text-on-dark);font-size:1.22rem}.why__text{color:var(--color-text-on-dark-soft);font-size:.98rem}@media (width<=900px){.why__grid{gap:var(--space-6) var(--space-5);grid-template-columns:repeat(2,1fr)}}@media (width<=520px){.why__grid{margin-top:var(--space-6);grid-template-columns:1fr}}.reviews__head{text-align:center;align-items:center;gap:var(--space-3);flex-direction:column;max-width:60ch;margin-inline:auto;display:flex}.reviews__heading{margin-top:var(--space-1)}.reviews__intro{color:var(--color-text-soft);font-size:1.08rem}.reviews__badge{margin-top:var(--space-3);justify-content:center;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);box-shadow:var(--shadow-rest);flex-wrap:wrap;display:inline-flex}.reviews__google{width:24px;height:24px;display:block}.reviews__rating{font-family:var(--font-display);color:var(--color-ink);font-size:1.25rem;font-weight:600}.reviews__count{color:var(--color-text-soft);font-size:.95rem}.reviews__link{color:var(--color-accent);padding-left:var(--space-3);border-left:1px solid var(--color-border);transition:color .2s var(--ease);font-size:.92rem;font-weight:600}.reviews__link:hover{color:var(--color-accent-dark)}.stars{color:#fbbc04;align-items:center;gap:2px;line-height:0;display:inline-flex}.stars__star{width:20px;height:20px}.stars--sm .stars__star{width:16px;height:16px}.reviews__carousel{margin-top:var(--space-7);align-items:center;gap:var(--space-3);display:flex;position:relative}.reviews__track{--per:3;--gap:var(--space-5);padding:var(--space-2) var(--space-1) var(--space-4);gap:var(--gap);column-gap:var(--gap);scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;flex:auto;min-width:0;margin:0;list-style:none;display:flex;overflow-x:auto}.reviews__track::-webkit-scrollbar{display:none}.reviews__slide{flex:0 0 calc((100% - (var(--per) - 1) * var(--gap)) / var(--per));scroll-snap-align:start;display:flex}.review{gap:var(--space-3);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-rest);padding:var(--space-5);transition:transform .2s var(--ease), box-shadow .2s var(--ease);flex-direction:column;display:flex}.review:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.review__text{color:var(--color-text);flex-grow:1;margin:0;font-size:1.02rem;line-height:1.6}.review__name{margin-top:var(--space-1);color:var(--color-text-soft);font-size:.92rem;font-weight:600}.reviews__arrow{width:48px;height:48px;color:var(--color-ink);background-color:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-rest);transition:background-color .2s var(--ease), color .2s var(--ease), transform .2s var(--ease), opacity .2s var(--ease);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.8rem;line-height:1;display:inline-flex}.reviews__arrow:hover:not(:disabled){background-color:var(--color-accent);color:#fff;border-color:var(--color-accent);transform:scale(1.05)}.reviews__arrow:disabled{opacity:.35;cursor:not-allowed}.reviews__arrow span{margin-top:-3px}.reviews__dots{margin-top:var(--space-4);justify-content:center;gap:var(--space-2);display:flex}.reviews__dot{background-color:var(--color-light-gray);width:9px;height:9px;transition:background-color .2s var(--ease), transform .2s var(--ease);border:none;border-radius:50%;padding:0}.reviews__dot:hover{background-color:var(--color-text-soft)}.reviews__dot.is-active{background-color:var(--color-accent);transform:scale(1.25)}@media (width<=900px){.reviews__track{--per:2;--gap:var(--space-4)}}@media (width<=600px){.reviews__track{--per:1}.reviews__link{border-left:none;padding-left:0}.reviews__arrow{display:none}}@media (prefers-reduced-motion:reduce){.reviews__track{scroll-behavior:auto}}.gallery__grid{margin-top:var(--space-6);grid-template-columns:repeat(4,1fr);grid-auto-rows:180px;grid-auto-flow:dense;gap:var(--space-4);display:grid}.gallery__item{cursor:pointer;background:0 0;border:none;border-radius:20px;padding:0;display:block}.gallery__item:first-child,.gallery__item:nth-child(8){grid-area:span 2/span 2}.gallery__media{width:100%;height:100%;box-shadow:var(--shadow-rest);transition:box-shadow .25s var(--ease), transform .25s var(--ease);border-radius:20px;display:block}.gallery__media img{will-change:transform;height:118%}.gallery__item:hover .gallery__media{box-shadow:var(--shadow-hover);transform:translateY(-4px)scale(1.04)}@media (width<=900px){.gallery__grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:auto}.gallery__item:first-child,.gallery__item:nth-child(8){grid-area:auto}.gallery__media{aspect-ratio:1;height:auto}.gallery__media img{height:100%}}@media (width<=600px){.gallery__grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr)}}.lightbox{z-index:200;justify-content:center;align-items:center;gap:var(--space-3);padding:clamp(var(--space-4), 5vw, var(--space-7));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:lightbox-in .2s var(--ease);background-color:#0a0a0aeb;display:flex;position:fixed;inset:0}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.lightbox__figure{align-items:center;gap:var(--space-3);flex-direction:column;max-width:min(960px,92vw);max-height:86vh;margin:0;display:flex}.lightbox__figure img{object-fit:contain;border-radius:var(--radius-lg);width:auto;max-width:100%;height:auto;max-height:78vh;box-shadow:0 24px 60px #00000080}.lightbox__caption{color:#f4f1ecc7;text-align:center;max-width:60ch;font-size:.92rem}.lightbox__close,.lightbox__nav{color:#fff;transition:background-color .2s var(--ease), transform .2s var(--ease);background-color:#f4f1ec1a;border:1px solid #f4f1ec40;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.lightbox__close:hover,.lightbox__nav:hover{background-color:#f4f1ec38;transform:scale(1.05)}.lightbox__close{top:var(--space-4);right:var(--space-4);width:48px;height:48px;font-size:1.8rem;line-height:1;position:absolute}.lightbox__nav{flex-shrink:0;width:52px;height:52px;font-size:2rem;line-height:1}@media (width<=600px){.lightbox__nav{width:44px;height:44px;font-size:1.6rem}.lightbox__figure{order:-1}}.contact__grid{margin-top:var(--space-6);gap:clamp(var(--space-6), 5vw, var(--space-8));grid-template-columns:1fr 1.1fr;align-items:start;max-width:1040px;margin-inline:auto;display:grid}.contact__info{gap:var(--space-6);flex-direction:column;display:flex}.contact__block-title{margin-bottom:var(--space-3);font-size:1.15rem}.contact__address{color:var(--color-text-soft);margin-bottom:var(--space-4)}.contact__map{margin-top:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-rest);aspect-ratio:16/10;background-color:var(--color-neutral);overflow:hidden}.contact__map iframe{border:0;width:100%;height:100%;display:block}.contact__actions{gap:var(--space-2);flex-direction:column;display:flex}.contact__action{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);transition:border-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);display:flex}.contact__action:hover{border-color:var(--color-accent);box-shadow:var(--shadow-rest);transform:translateY(-2px)}.contact__action-label{color:var(--color-ink);font-weight:600}.contact__action-value{color:var(--color-accent);font-weight:500}.contact__hours{flex-direction:column;display:flex}.contact__hours-row{justify-content:space-between;gap:var(--space-4);border-bottom:1px solid var(--color-border);color:var(--color-text-soft);padding-block:10px;font-size:.98rem;display:flex}.contact__hours-row:last-child{border-bottom:none}.contact__hours-row.is-today{color:var(--color-ink);font-weight:600}.contact__hours-row.is-today span:last-child{color:var(--color-accent)}.contact__form-wrap{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-rest);padding:clamp(var(--space-5), 4vw, var(--space-7))}.contact__form{gap:var(--space-4);flex-direction:column;display:flex}.contact__form-note{color:var(--color-text-soft);margin-bottom:var(--space-1);font-size:1rem}.field{gap:var(--space-2);flex-direction:column;display:flex}.field label{color:var(--color-ink);font-size:.9rem;font-weight:600}.field__req{color:var(--color-accent)}.field__error{color:#b3261e;font-size:.85rem}.field input.is-invalid,.field select.is-invalid,.field textarea.is-invalid{border-color:#b3261e}.field input.is-invalid:focus,.field select.is-invalid:focus,.field textarea.is-invalid:focus{border-color:#b3261e;box-shadow:0 0 0 3px #b3261e29}.field input,.field select,.field textarea{font-family:var(--font-body);color:var(--color-ink);background-color:var(--color-bg);border:1px solid var(--color-light-gray);border-radius:var(--radius-sm);transition:border-color .2s var(--ease), box-shadow .2s var(--ease), background-color .2s var(--ease);padding:14px 16px;font-size:1rem}.field textarea{resize:vertical;min-height:88px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-accent);background-color:var(--color-surface);outline:none;box-shadow:0 0 0 3px #b08a4829}.contact__submit{margin-top:var(--space-2);width:100%}.contact__sent{gap:var(--space-3);flex-direction:column;align-items:flex-start;display:flex}.contact__sent-check{width:48px;height:48px;color:var(--color-accent);background-color:#b08a4824;border-radius:50%;justify-content:center;align-items:center;font-size:1.4rem;font-weight:700;display:inline-flex}.contact__sent p{color:var(--color-text-soft)}@media (width<=860px){.contact__grid{gap:var(--space-6);margin-top:var(--space-6);grid-template-columns:1fr}.contact__form-wrap{order:-1}}.faq__container{max-width:820px;margin-inline:auto}.faq__list{margin-top:var(--space-6);gap:var(--space-3);flex-direction:column;display:flex}.faq__item{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:box-shadow .2s var(--ease), border-color .2s var(--ease);overflow:hidden}.faq__item.is-open{box-shadow:var(--shadow-rest);border-color:#b08a4866}.faq__q{justify-content:space-between;align-items:center;gap:var(--space-4);text-align:left;width:100%;padding:var(--space-4) var(--space-5);font-family:var(--font-display);color:var(--color-ink);background:0 0;border:none;font-size:1.15rem;font-weight:500;display:flex}.faq__icon{flex-shrink:0;width:18px;height:18px;position:relative}.faq__icon:before,.faq__icon:after{content:"";background-color:var(--color-accent);width:16px;height:2px;transition:transform .25s var(--ease), opacity .25s var(--ease);border-radius:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq__icon:after{transform:translate(-50%,-50%)rotate(90deg)}.faq__item.is-open .faq__icon:after{opacity:0;transform:translate(-50%,-50%)rotate(0)}.faq__a{transition:grid-template-rows .3s var(--ease);grid-template-rows:0fr;display:grid}.faq__item.is-open .faq__a{grid-template-rows:1fr}.faq__a>p{padding-inline:var(--space-5);color:var(--color-text-soft);max-width:none;margin:0;overflow:hidden}.faq__item.is-open .faq__a>p{padding-bottom:var(--space-5)}.footer{background-color:var(--color-black);color:var(--color-text-on-dark);padding-top:var(--space-8)}.footer__inner{gap:var(--space-6);padding-bottom:var(--space-7);text-align:center;grid-template-columns:1.6fr 1fr 1.2fr 1fr;justify-items:center;display:grid}.footer__col,.footer__brand-col{flex-direction:column;align-items:center;display:flex}.footer__brand{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:#fff;font-size:1.4rem;font-weight:600}.footer__blurb{margin-top:var(--space-3);color:var(--color-text-on-dark-soft);max-width:34ch;margin-inline:auto;font-size:.98rem}.footer__heading{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-soft);margin-bottom:var(--space-4);font-size:.8rem;font-weight:600}.footer__links{gap:var(--space-3);flex-direction:column;display:flex}.footer__links a,.footer__address{color:var(--color-text-on-dark-soft);transition:color .2s var(--ease);font-size:.98rem}.footer__links a:hover{color:#fff}.footer__address{max-width:24ch}.footer__hours{flex-direction:column;gap:10px;min-width:160px;display:flex}.footer__hours li{justify-content:space-between;gap:var(--space-4);color:var(--color-text-on-dark-soft);font-size:.92rem;display:flex}.footer__bottom{padding-block:var(--space-5);border-top:1px solid var(--color-border-dark);color:#f4f1ec8c;letter-spacing:.02em;justify-content:space-between;align-items:center;font-size:.88rem;display:flex}@media (width<=860px){.footer__inner{gap:var(--space-6) var(--space-5);grid-template-columns:1fr 1fr}.footer__brand-col{grid-column:1/-1}}@media (width<=480px){.footer__inner{grid-template-columns:1fr}}.mobilebar{display:none}@media (width<=860px){.mobilebar{z-index:90;gap:var(--space-2);padding:var(--space-2);padding-bottom:max(var(--space-2), env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;transition:transform .35s var(--ease), opacity .35s var(--ease);background-color:#111111f0;border-top:1px solid #f4f1ec1f;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%)}.mobilebar.is-shown{opacity:1;pointer-events:auto;transform:translateY(0)}.mobilebar__btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-body);border-radius:var(--radius-sm);transition:background-color .2s var(--ease), transform .15s var(--ease);flex:1;padding:14px 16px;font-size:1rem;font-weight:600;display:inline-flex}.mobilebar__btn:active{transform:scale(.98)}.mobilebar__btn--call{color:var(--color-text-on-dark);background-color:#f4f1ec1a;border:1px solid #f4f1ec47}.mobilebar__btn--book{color:#fff;background-color:var(--color-accent)}.mobilebar__icon{width:18px;height:18px}body{padding-bottom:64px}}@media (prefers-reduced-motion:reduce){.mobilebar__btn{transition:none}}
