:root{--black:#111;--black-soft:#191919;--charcoal:#242424;--orange:#f28c18;--orange-bright:#ff9d24;--white:#fff;--mist:#f1f1ee;--grey:#a7a7a2;--line:rgba(255,255,255,.16);--line-dark:rgba(17,17,17,.16);--display:Impact,Haettenschweiler,"Arial Narrow Bold","Arial Narrow",sans-serif;--body:Arial,Helvetica,sans-serif;--container:76rem}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{margin:0;overflow-x:hidden;background:var(--black);color:var(--white);font-family:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}address{font-style:normal}h1,h2,h3,p,blockquote,dl,dd{margin-top:0}h1,h2,h3{text-wrap:balance}h1,h2,h3{font-family:var(--display);font-weight:900;line-height:.9;letter-spacing:.005em;text-transform:uppercase}h1{margin-bottom:1.5rem;max-width:8.7ch;font-size:clamp(4rem,9vw,8.6rem)}h2{margin-bottom:1.5rem;max-width:11ch;font-size:clamp(3rem,6.4vw,6rem)}h3{margin-bottom:.45rem;font-size:clamp(1.7rem,3vw,2.6rem)}:focus-visible{outline:3px solid var(--orange-bright);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;top:.5rem;left:.5rem;padding:.75rem 1rem;background:var(--orange);color:var(--black);font-weight:900;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.container{width:min(calc(100% - 2.5rem),var(--container));margin-inline:auto}.section{padding-block:clamp(5.5rem,10vw,9rem)}
.eyebrow{display:flex;align-items:center;gap:.8rem;margin-bottom:1.4rem;color:var(--grey);font-size:.72rem;font-weight:900;letter-spacing:.18em;line-height:1;text-transform:uppercase}.eyebrow>span{width:2.25rem;height:2px;background:currentColor}.eyebrow-orange{color:#9b5200}.eyebrow-light{color:var(--orange-bright)}
.site-header{position:fixed;z-index:100;inset:0 0 auto;border-bottom:1px solid transparent;background:linear-gradient(to bottom,rgba(17,17,17,.94),rgba(17,17,17,0));transition:background 180ms ease,border-color 180ms ease}.site-header.is-scrolled{border-color:var(--line);background:rgba(17,17,17,.96);backdrop-filter:blur(16px)}.header-inner{display:flex;min-height:5rem;align-items:center;gap:2rem}.brand{display:inline-flex;align-items:center;gap:.8rem;line-height:1}.brand img{width:3.1rem;height:3.1rem;border-radius:50%;object-fit:cover}.brand span{display:flex;flex-direction:column;gap:.28rem}.brand strong{font-family:Georgia,serif;font-size:1.3rem;font-style:italic;letter-spacing:-.06em}.brand small{color:var(--grey);font-size:.57rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.main-nav{display:flex;margin-left:auto;align-items:center;gap:clamp(1.25rem,3vw,2.5rem)}.main-nav a,.footer-links a{color:#d8d8d4;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.main-nav a{position:relative}.main-nav a::after{position:absolute;right:0;bottom:-.35rem;left:0;height:2px;background:var(--orange);content:"";transform:scaleX(0);transform-origin:left;transition:transform 180ms ease}.main-nav a:hover::after,.main-nav a:focus-visible::after{transform:scaleX(1)}.menu-toggle{display:none;width:2.7rem;height:2.7rem;border:0;background:transparent;cursor:pointer}.menu-toggle>span:not(.sr-only){display:block;width:1.5rem;height:2px;margin:.32rem auto;background:var(--white);transition:transform 180ms ease}
.button{display:inline-flex;min-height:3.45rem;align-items:center;justify-content:center;gap:.8rem;padding:.85rem 1.35rem;border:2px solid transparent;border-radius:0;font-size:.76rem;font-weight:900;letter-spacing:.08em;line-height:1.1;text-align:center;text-transform:uppercase;transition:transform 160ms ease,background 160ms ease,color 160ms ease}.button:hover{transform:translateY(-3px)}.button:active{transform:translateY(0) scale(.98)}.button-small{min-height:2.85rem;padding-inline:1rem;background:var(--white);color:var(--black)}.button-orange{background:var(--orange);color:var(--black)}.button-orange:hover{background:var(--orange-bright)}.button-outline{border-color:var(--black);color:var(--black)}.button-outline:hover{background:var(--black);color:var(--white)}.button-wide{min-width:min(100%,19rem)}.text-link,.instagram-link,.detail-link{display:inline-flex;align-items:center;gap:.65rem;padding-block:.45rem;border-bottom:1px solid currentColor;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.text-link span,.instagram-link span{transition:transform 160ms ease}.text-link:hover span,.instagram-link:hover span{transform:translate(3px,-3px)}.text-link-dark{color:var(--black)}
.hero{position:relative;min-height:100dvh;overflow:hidden;padding:8.7rem 0 5rem;background:radial-gradient(circle at 10% 45%,rgba(242,140,24,.09),transparent 27%),var(--black)}.hero::before{position:absolute;inset:0;opacity:.09;background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(8.333% - 1px),#fff calc(8.333% - 1px),#fff 8.333%);content:"";pointer-events:none}.hero-grid{position:relative;display:grid;min-height:calc(100dvh - 13rem);grid-template-columns:.95fr 1.05fr;align-items:center;gap:clamp(3rem,6vw,7rem)}.hero-copy{position:relative;z-index:2}.hero h1 em{color:var(--orange);font-style:normal;-webkit-text-stroke:1px var(--orange)}.hero-lead{max-width:34rem;margin-bottom:2rem;color:#c7c7c3;font-size:clamp(1rem,1.6vw,1.22rem);line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem}.hero-proof{display:flex;margin-top:3.8rem;align-items:center;gap:1rem}.hero-proof>div{display:flex;padding-right:1rem;border-right:1px solid var(--line);flex-direction:column}.hero-proof strong{font-family:var(--display);font-size:2.5rem;line-height:.85}.hero-proof span{color:var(--orange);font-size:.68rem;letter-spacing:.08em}.hero-proof p{margin:0;color:var(--grey);font-size:.78rem;line-height:1.5}.hero-proof b{color:var(--white)}.hero-collage{position:relative;min-height:42rem}.hero-photo{position:absolute;overflow:hidden;margin:0;background:var(--charcoal)}.hero-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.07);transition:filter 320ms ease,transform 600ms cubic-bezier(.2,.75,.2,1)}.hero-photo:hover img{filter:saturate(1) contrast(1.02);transform:scale(1.035)}.hero-photo-main{z-index:2;top:1rem;left:6%;width:48%;height:88%}.hero-photo-top{top:0;right:0;width:37%;height:47%}.hero-photo-bottom{right:4%;bottom:0;width:40%;height:46%}.hero-photo-main::after{position:absolute;inset:0;border:1px solid rgba(255,255,255,.18);content:"";pointer-events:none}.hero-stamp{position:absolute;z-index:5;right:26%;bottom:2.5rem;padding:.8rem 1rem;background:var(--orange);color:var(--black);font-family:var(--display);font-size:1rem;letter-spacing:.08em;text-transform:uppercase;transform:rotate(-4deg)}
.ticker{overflow:hidden;border-block:1px solid var(--line);background:var(--orange);color:var(--black)}.ticker-track{display:flex;width:max-content;min-width:100%;align-items:center;justify-content:space-around;gap:2rem;padding:1rem 2rem}.ticker span{font-family:var(--display);font-size:clamp(1.4rem,2.4vw,2.1rem);letter-spacing:.05em;text-transform:uppercase}.ticker i{font-style:normal}
.services{background:var(--mist);color:var(--black)}.section-heading{display:grid;margin-bottom:4rem;grid-template-columns:1fr minmax(18rem,30rem);align-items:end;gap:3rem}.section-heading p:last-child{margin-bottom:.6rem;color:#575752}.service-list{border-top:1px solid var(--line-dark)}.service-row{display:grid;min-height:9rem;padding:1.5rem 0;border-bottom:1px solid var(--line-dark);grid-template-columns:5rem 1fr auto;align-items:center;gap:2rem;transition:padding-inline 200ms ease,background 200ms ease}.service-row:hover{padding-inline:1.5rem;background:var(--white)}.service-index{color:#777771;font-size:.76rem;font-weight:900;letter-spacing:.12em}.service-row p{max-width:40rem;margin-bottom:0;color:#62625d}.service-mark{font-size:2rem}
.gallery{background:var(--black)}.gallery-heading{display:flex;margin-bottom:4rem;align-items:end;justify-content:space-between;gap:2rem}.gallery-heading h2{margin-bottom:0}.instagram-link{margin-bottom:.6rem}.photo-grid{display:grid;grid-template-columns:.85fr 1.15fr .75fr;grid-template-rows:22rem 18rem;gap:1rem}.photo-grid figure{overflow:hidden;margin:0}.photo-grid img{width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:filter 260ms ease,transform 520ms cubic-bezier(.2,.75,.2,1)}.photo-grid figure:hover img{filter:saturate(1);transform:scale(1.025)}.photo-tall{grid-row:1/3}.photo-wide{grid-column:2/3}.photo-square{grid-column:2/4}.gallery-quote{display:flex;margin:0;padding:2.3rem;background:var(--orange);color:var(--black);flex-direction:column;justify-content:space-between;font-family:var(--display);font-size:clamp(1.6rem,2.3vw,2.4rem);line-height:1.02;text-transform:uppercase}.gallery-quote cite{margin-top:2rem;font-family:var(--body);font-size:.67rem;font-style:normal;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.about{background:var(--white);color:var(--black)}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:clamp(3rem,8vw,8rem)}.about-photo{position:relative;margin:0}.about-photo::before{position:absolute;z-index:0;top:-1.5rem;right:-1.5rem;width:54%;height:70%;background:var(--orange);content:""}.about-photo img{position:relative;z-index:1;width:100%;max-height:39rem;object-fit:cover}.about-photo figcaption{position:relative;z-index:2;margin-top:.9rem;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.about-copy>p:not(.eyebrow){max-width:38rem;color:#50504c;font-size:1.08rem}.about-copy .text-link{margin-top:1rem}
.reviews{background:var(--orange);color:var(--black)}.reviews-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(3rem,8vw,8rem)}.rating{position:sticky;top:8rem;height:fit-content;padding-right:2rem;border-right:1px solid rgba(17,17,17,.25)}.rating-number{display:block;font-family:var(--display);font-size:clamp(8rem,17vw,14rem);line-height:.75;letter-spacing:-.04em}.rating-stars{display:block;margin-top:2rem;font-size:1rem;letter-spacing:.3em}.rating p{margin-top:.7rem;font-size:.78rem;font-weight:900;letter-spacing:.1em;line-height:1.45;text-transform:uppercase}.reviews h2{max-width:10ch}.review-list{margin:3rem 0;border-top:1px solid rgba(17,17,17,.25)}.review-list blockquote{display:grid;margin:0;padding:1.6rem 0;border-bottom:1px solid rgba(17,17,17,.25);grid-template-columns:1fr 13rem;align-items:end;gap:2rem}.review-list p{margin-bottom:0;font-size:1.08rem;font-weight:700}.review-list cite{font-size:.67rem;font-style:normal;font-weight:900;letter-spacing:.08em;text-align:right;text-transform:uppercase}
.contact{background:var(--black-soft)}.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(3rem,8vw,8rem)}.contact-copy p:not(.eyebrow){max-width:32rem;color:#b8b8b3;font-size:1.08rem}.contact-copy .button{margin-top:1rem}.phone{display:block;width:fit-content;margin-top:1.5rem;color:var(--grey);font-size:.88rem;font-weight:800}.contact-details{display:grid;align-content:start;gap:3rem}.contact-details>div{padding-top:1.2rem;border-top:1px solid var(--line)}.detail-label{margin-bottom:1.2rem;color:var(--orange);font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.contact-details address{margin-bottom:1.2rem;font-family:var(--display);font-size:clamp(1.65rem,3vw,2.5rem);line-height:1.08;text-transform:uppercase}.detail-link{color:#cbcbc5;font-size:.7rem}.hours{margin:0}.hours div{display:flex;padding:.7rem 0;border-bottom:1px solid var(--line);justify-content:space-between;gap:2rem}.hours dt{color:#c9c9c4}.hours dd{font-weight:800}.contact-details small{display:block;margin-top:.8rem;color:#858580}.map-section{height:28rem;border-block:1px solid var(--line);filter:grayscale(1) invert(.9) contrast(.9)}.map-section iframe{width:100%;height:100%;border:0}
.site-footer{padding:4.5rem 0 1.5rem;background:#0b0b0b}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:3rem}.footer-brand img{width:4.75rem;height:4.75rem}.footer-brand strong{font-size:2rem}.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:1.2rem 2.3rem}.footer-links a:hover{color:var(--orange)}.footer-bottom{display:flex;margin-top:4rem;padding-top:1.25rem;border-top:1px solid var(--line);justify-content:space-between;gap:2rem;color:#777772;font-size:.72rem}.footer-bottom p{margin-bottom:0}.floating-whatsapp{position:fixed;z-index:120;right:1.4rem;bottom:1.4rem;display:flex;min-height:3.55rem;padding:.55rem 1.05rem .55rem .55rem;border:1px solid rgba(255,255,255,.28);border-radius:999px;align-items:center;gap:.65rem;background:#24d366;color:#072512;box-shadow:0 16px 45px rgba(0,0,0,.3);font-size:.76rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;transition:transform 180ms ease}.floating-whatsapp:hover{transform:translateY(-4px)}.floating-whatsapp span{display:grid;width:2.45rem;height:2.45rem;border:2px solid currentColor;border-radius:50%;place-items:center;font-size:.65rem}.reveal{opacity:0;transform:translateY(2rem);transition:opacity 650ms ease,transform 650ms cubic-bezier(.2,.75,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.hero-collage .reveal:nth-child(2){transition-delay:100ms}.hero-collage .reveal:nth-child(3){transition-delay:190ms}
.privacy-main{min-height:80dvh;padding:9rem 0 6rem;background:var(--mist);color:var(--black)}.privacy-content{max-width:52rem}.privacy-content h1{max-width:10ch}.privacy-content h2{margin-top:3.2rem;font-size:clamp(2rem,4vw,3rem)}.privacy-content p{max-width:68ch;color:#50504c;font-size:1.05rem}.privacy-content a:not(.button){border-bottom:1px solid currentColor;font-weight:800}.privacy-updated{margin-bottom:3rem;font-size:.75rem!important;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.privacy-content .button{margin-top:2rem}.privacy-back{margin-left:auto}
@media(max-width:980px){.header-cta{display:none}.hero{min-height:auto}.hero-grid{min-height:auto;grid-template-columns:1fr}.hero-copy{padding-top:2rem}.hero-collage{min-height:39rem}.section-heading,.about-grid,.reviews-grid,.contact-grid{grid-template-columns:1fr}.section-heading{align-items:start}.rating{position:static;display:grid;padding:0 0 2.5rem;border-right:0;border-bottom:1px solid rgba(17,17,17,.25);grid-template-columns:auto 1fr;align-items:end;column-gap:2rem}.rating-number{grid-row:1/3}.rating-stars{margin-top:0}.rating p{margin-bottom:0}}
@media(max-width:760px){.container{width:min(calc(100% - 2rem),var(--container))}.section{padding-block:5.3rem}.site-header{background:rgba(17,17,17,.96)}.header-inner{min-height:4.5rem}.brand img{width:2.75rem;height:2.75rem}.brand small{display:none}.menu-toggle{display:block;margin-left:auto}.menu-toggle[aria-expanded="true"]>span:nth-child(1){transform:translateY(5px) rotate(45deg)}.menu-toggle[aria-expanded="true"]>span:nth-child(2){transform:rotate(-45deg)}.main-nav{position:fixed;inset:4.5rem 0 auto;display:grid;padding:2rem 1rem 2.5rem;border-bottom:1px solid var(--line);background:rgba(17,17,17,.98);gap:0;opacity:0;pointer-events:none;transform:translateY(-1rem);transition:opacity 180ms ease,transform 180ms ease}.main-nav.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.main-nav a{padding:1rem;border-bottom:1px solid var(--line);font-size:.9rem}.hero{padding-top:7.5rem}.hero-grid{gap:2.5rem}.hero h1{font-size:clamp(4rem,20vw,6rem)}.hero-actions{align-items:flex-start;flex-direction:column}.hero-proof{margin-top:2.7rem}.hero-collage{min-height:30rem}.hero-photo-main{left:0;width:64%;height:86%}.hero-photo-top{width:38%;height:43%}.hero-photo-bottom{right:0;width:42%;height:43%}.hero-stamp{right:19%;bottom:1.5rem;font-size:.78rem}.ticker-track{justify-content:flex-start}.section-heading{margin-bottom:2.5rem;gap:.5rem}.service-row{min-height:8rem;grid-template-columns:2.6rem 1fr;gap:1rem}.service-mark{display:none}.service-row p{font-size:.9rem}.gallery-heading{align-items:flex-start;flex-direction:column}.photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:24rem 14rem 20rem}.photo-tall{grid-row:1/2}.photo-wide{grid-column:2/3}.gallery-quote{grid-column:1/3;padding:1.7rem}.photo-square{grid-column:1/3}.about-grid{gap:3.5rem}.about-photo{width:calc(100% - 1.5rem)}.review-list blockquote{grid-template-columns:1fr;gap:.8rem}.review-list cite{text-align:left}.rating{grid-template-columns:auto 1fr;column-gap:1rem}.rating-number{font-size:7rem}.map-section{height:22rem}.footer-main{align-items:flex-start;flex-direction:column}.footer-links{justify-content:flex-start}.footer-bottom{flex-direction:column;gap:.6rem}.floating-whatsapp{right:.75rem;bottom:.75rem}}
@media(max-width:430px){.hero-collage{min-height:25rem}.hero-stamp{right:14%}.button{width:100%}.hero-actions .text-link{width:auto}.photo-grid{grid-template-rows:18rem 15rem 18rem}.rating{display:block}.rating-stars{margin-top:1.5rem}.hours div{gap:1rem}.floating-whatsapp{width:3.55rem;padding:.55rem;justify-content:center}.floating-whatsapp b{display:none}.privacy-back{width:auto}.privacy-content h1{font-size:3.6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
.reviews .eyebrow-orange{color:var(--black)}
.hero h1{font-size:clamp(4rem,8vw,7.3rem)}
@media(max-width:760px){.hero h1{font-size:clamp(4rem,20vw,6rem)}}
