@font-face{font-family:Forum;src:url("./assets/fonts/forum-400.woff2") format("woff2");font-display:swap}
@font-face{font-family:"League Gothic";src:url("./assets/fonts/league-gothic-400.woff2") format("woff2");font-display:swap}
@font-face{font-family:Satoshi;src:url("./assets/fonts/satoshi-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Satoshi;src:url("./assets/fonts/satoshi-500.woff2") format("woff2");font-weight:500;font-display:swap}
:root{--bg:#030303;--black:#000;--panel:#1a1a1a;--line:#292929;--text:#e3e3e3;--muted:#bfbfbf;--container:1200px;--header:60px}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;min-width:320px;color:var(--text);background:var(--bg);font:16px/1.45 Satoshi,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}
.container,.nav-shell{width:min(calc(100% - 48px),var(--container));margin-inline:auto}.site-header{position:fixed;inset:0 0 auto;z-index:100;height:var(--header);background:rgba(0,0,0,.96);border-bottom:1px solid rgba(255,255,255,.03)}.nav-shell{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{font:32px/1 "League Gothic",sans-serif}.main-nav{display:flex;align-items:center;gap:30px;color:#c2c2c2;font-size:15px}.main-nav>a:not(.button):hover{color:#fff}.phone-link{display:inline-flex;align-items:center;gap:8px}.button{min-height:44px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #303030;background:transparent;color:var(--text);text-transform:uppercase;font-size:14px;font-weight:500;cursor:pointer;transition:.18s ease}.button:hover{transform:translateY(-2px);border-color:#777}.button-small{min-width:86px}.button-light{color:#0b0b0b;background:#e9e9e9;border-color:#e9e9e9}.button-light:hover{background:#fff}.menu-toggle{display:none;width:42px;height:42px;padding:10px 8px;border:0;background:transparent}.menu-toggle span{display:block;height:1px;margin:7px 0;background:white}
.hero{position:relative;min-height:1039px;overflow:hidden;padding-top:var(--header);display:grid;place-items:center;background:#000}.hero-collage{position:absolute;inset:60px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;transform:scale(1.018)}.hero-collage>div{min-width:0;display:grid;gap:10px}.hero-collage>div:nth-child(1){grid-template-rows:90px 235px 235px 245px}.hero-collage>div:nth-child(2){grid-template-rows:150px 260px 250px 260px}.hero-collage>div:nth-child(3){grid-template-rows:90px 290px 220px 260px}.hero-collage>div:nth-child(4){grid-template-rows:150px 245px 230px 270px}.hero-collage img{height:100%;object-fit:cover;border-radius:7px;filter:saturate(.78) contrast(1.08)}.hero-shade{position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.38)),radial-gradient(circle,rgba(0,0,0,.18),rgba(0,0,0,.58) 62%,rgba(0,0,0,.8))}.hero-content{position:relative;z-index:2;margin-top:-15px;text-align:center}.hero h1,.section-heading h2,.about h2,.booking h2{margin:0;font-family:Forum,serif;font-weight:400;text-transform:uppercase;letter-spacing:-.025em}.hero h1{font-size:clamp(66px,6vw,100px);line-height:1.02}.hero-content>p{margin:36px 0 38px;color:#d3d3d3}.hero-actions{display:flex;justify-content:center;gap:10px}.hero-details{position:absolute;z-index:2;left:max(24px,calc((100vw - var(--container))/2));bottom:58px;width:250px;padding:24px;background:rgba(15,15,15,.84);backdrop-filter:blur(12px)}.hero-details p{margin:0 0 20px;display:flex;gap:12px;color:#c4c4c4;font-size:14px}.hero-details p:last-child{margin:0}.hero-details span{display:block}
.about,.artists,.services,.gallery,.reviews,.booking{position:relative;background:#000}.about{min-height:823px;padding:170px 0 110px}.split-layout{display:grid;grid-template-columns:1fr 628px;align-items:center;gap:86px}.eyebrow{margin:0 0 30px;color:#aaa;text-transform:uppercase;letter-spacing:.2em;font-size:14px}.about h2{font-size:52px;line-height:1.12}.body-copy{max-width:405px;margin:34px 0 40px;color:#bebebe}.text-link{display:inline-block;color:#e4e4e4;text-transform:uppercase;font-size:18px;border-bottom:1px solid transparent}.text-link:hover{color:#fff;border-color:currentColor}.about-image{margin:0;overflow:hidden;aspect-ratio:628/543}.about-image img{height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08)}
.artists{min-height:910px;padding:165px 0 105px}.section-heading{text-align:center}.section-heading .eyebrow{margin-bottom:24px}.section-heading h2{font-size:50px;line-height:1.06}.artist-grid{margin-top:72px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.artist-card img{height:364px;object-fit:cover}.artist-card h3,.service-card h3{margin:0;font-size:20px;font-weight:400}.artist-card>p{margin:0;color:#aaa}.card-row{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:16px}.card-row a{color:#c7c7c7;font-size:13px;white-space:nowrap}.center-link{display:table;margin:70px auto 0}
.services{min-height:1240px;padding:150px 0 120px}.services-grid{margin-top:72px;display:grid;grid-template-columns:repeat(2,1fr);gap:58px 40px}.service-card img{height:342px;object-fit:cover}
.gallery{min-height:1312px;padding:90px 0 98px}.gallery-grid{margin-top:74px;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:408px;gap:8px}.gallery-grid figure{margin:0;overflow:hidden}.gallery-grid figure:nth-child(1),.gallery-grid figure:nth-child(6){grid-column:span 2}.gallery-grid img{height:100%;object-fit:cover;transition:transform .55s ease}.gallery-grid figure:hover img{transform:scale(1.035)}
.reviews{min-height:1118px;padding:130px 0 110px}.review-grid{margin-top:70px;display:grid;grid-template-columns:repeat(3,1fr)}.review-card{min-height:292px;padding:34px 32px 28px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line);background:#020202}.review-card blockquote{margin:0 0 26px;font-size:19px;line-height:1.45}.review-card footer{display:flex;align-items:center;justify-content:space-between;color:#aaa;font-size:13px}.review-card footer span{display:flex;align-items:center;gap:10px}.review-card footer img{width:40px;height:40px;object-fit:cover}
.booking{min-height:831px;padding:130px 0 110px}.booking-layout{display:grid;grid-template-columns:390px 1fr;gap:145px}.booking h2{font-size:52px;line-height:1.12}.booking-info dl,.footer-contact dl{margin:65px 0 58px;display:grid;gap:24px}.booking-info dl div,.footer-contact dl div{display:grid;gap:2px}dt,dd{margin:0}dt{color:#a8a8a8;font-size:14px}dd{color:#d0d0d0}.booking-form{display:grid;align-content:start;gap:12px}.booking-form label{display:grid;gap:6px;color:#aaa;font-size:13px}.booking-form input,.booking-form select,.booking-form textarea{width:100%;color:#d9d9d9;background:#1b1b1b;border:1px solid #242424;border-radius:3px;outline:0}.booking-form input,.booking-form select{height:42px;padding:0 13px}.booking-form textarea{min-height:104px;padding:12px 13px;resize:vertical}.booking-form :is(input,select,textarea):focus{border-color:#666;background:#202020}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.booking-form .check-label{display:flex;align-items:center;gap:10px;font-size:14px}.check-label input{width:18px;height:18px;margin:0;accent-color:#dedede}.submit-button{width:100%}.form-status{min-height:20px;margin:0;color:#bbb;font-size:13px}
.faq-strip{padding:80px 0;background:#050505;border-top:1px solid var(--line)}.faq-strip details{padding:22px 0;border-bottom:1px solid var(--line)}.faq-strip summary{cursor:pointer;font:28px Forum,serif}.faq-strip p{max-width:640px;color:#aaa}
.site-footer{min-height:520px;padding:110px 0 40px;background:#020202}.footer-top{display:grid;grid-template-columns:1fr 420px;gap:150px}.footer-contact dl{margin:0;grid-template-columns:repeat(2,1fr);gap:42px 65px}.socials{margin-top:55px;display:flex;gap:20px;color:#aaa;font-size:24px}.footer-nav{display:grid;grid-template-columns:repeat(3,1fr);align-content:start;gap:62px 65px;color:#bdbdbd}.footer-nav a:hover{color:#fff}.footer-bottom{margin-top:70px;padding-top:45px;display:grid;grid-template-columns:1fr auto auto;align-items:end;gap:38px;border-top:1px solid var(--line)}.footer-bottom p{margin:0;color:#888;font-size:13px}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1100px){.main-nav{gap:20px}.split-layout{grid-template-columns:1fr 52%;gap:55px}.artist-card img{height:320px}.booking-layout{gap:70px}.footer-top{gap:80px}}
@media(max-width:809px){:root{--header:64px}.container,.nav-shell{width:min(calc(100% - 32px),var(--container))}.menu-toggle{display:block}.main-nav{position:fixed;inset:var(--header) 0 0;padding:44px 24px;flex-direction:column;align-items:stretch;gap:0;background:#050505;transform:translateX(100%);transition:transform .24s ease}.main-nav.is-open{transform:none}.main-nav>a{padding:18px 0;border-bottom:1px solid var(--line)}.main-nav .button{margin-top:24px}.hero{min-height:880px}.hero-collage{grid-template-columns:repeat(2,1fr);opacity:.78}.hero-collage>div:nth-child(n+3){display:none}.hero h1{font-size:clamp(52px,13vw,78px)}.hero-content{padding:0 20px}.hero-content>p{max-width:450px;margin-inline:auto}.hero-details{left:16px;bottom:20px;width:230px;padding:18px}.about,.artists,.services,.gallery,.reviews,.booking{min-height:auto;padding:105px 0}.split-layout,.booking-layout{grid-template-columns:1fr;gap:60px}.artist-grid{grid-template-columns:repeat(2,1fr)}.services-grid{gap:45px 20px}.service-card img{height:260px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:300px}.gallery-grid figure:nth-child(n){grid-column:span 1}.gallery-grid figure:nth-child(1),.gallery-grid figure:nth-child(6){grid-column:span 2}.review-grid{grid-template-columns:1fr 1fr}.booking-info dl{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:1fr;gap:80px}}
@media(max-width:560px){.hero{min-height:820px}.hero h1{font-size:48px}.hero-content>p{margin:24px auto 28px;font-size:14px}.hero-actions{flex-direction:column;align-items:center}.hero-actions .button{width:210px}.hero-details{display:none}.eyebrow{margin-bottom:18px}.about h2,.section-heading h2,.booking h2{font-size:39px}.artist-grid,.services-grid,.review-grid{grid-template-columns:1fr}.artist-card img{height:430px}.service-card img{height:245px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:280px}.gallery-grid figure:nth-child(n){grid-column:span 1}.form-pair,.booking-info dl,.footer-contact dl,.footer-nav{grid-template-columns:1fr}.footer-nav{gap:22px}.footer-bottom{grid-template-columns:1fr;align-items:start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.hero-collage>div{animation:none}.reveal{opacity:1;transform:none}}

.hero-shade{pointer-events:none}.hero-collage>div{display:flex;flex-direction:column;gap:10px;will-change:transform}.hero-collage>div:nth-child(1),.hero-collage>div:nth-child(3){animation:hero-track-down 42s linear infinite}.hero-collage>div:nth-child(2),.hero-collage>div:nth-child(4){animation:hero-track-up 42s linear infinite}.hero-collage>div:nth-child(2){animation-delay:-11s}.hero-collage>div:nth-child(3){animation-delay:-24s}.hero-collage>div:nth-child(4){animation-delay:-34s}.hero-collage img{position:relative;z-index:1;flex:0 0 231px;height:231px;transform:scale(1);transition:transform .38s cubic-bezier(.2,.8,.2,1),filter .38s ease,box-shadow .38s ease}.hero-collage img:hover{z-index:3;transform:scale(1.08);filter:saturate(1.08) contrast(1.03) brightness(1.5);box-shadow:0 28px 58px rgba(0,0,0,.6)}@keyframes hero-track-up{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-964px,0)}}@keyframes hero-track-down{from{transform:translate3d(0,-964px,0)}to{transform:translate3d(0,0,0)}}@media(prefers-reduced-motion:reduce){.hero-collage>div{animation:none}}

.artists .section-heading h2,.services .section-heading h2{font-size:clamp(34px,3.4vw,44px);letter-spacing:-.018em}.artist-card{position:relative}.artist-card .card-row{margin-top:13px}.artist-card-toggle{width:30px;height:30px;padding:0;border:1px solid #373737;border-radius:50%;background:transparent;color:#e8e8e8;font-size:18px;line-height:1;cursor:pointer;transition:transform .24s ease,border-color .24s ease,background .24s ease}.artist-card-toggle:hover{border-color:#cfcfcf;background:#161616}.artist-card.is-open .artist-card-toggle{transform:rotate(90deg);background:#e9e9e9;color:#111}.artist-details{display:grid;grid-template-rows:0fr;transition:grid-template-rows .36s cubic-bezier(.2,.7,.2,1)}.artist-details-inner{overflow:hidden}.artist-details p{margin:0;padding-top:0;color:#a9a9a9;font-size:14px;line-height:1.55;transition:padding .36s ease}.artist-card.is-open .artist-details{grid-template-rows:1fr}.artist-card.is-open .artist-details p{padding-top:18px}.artist-socials{display:flex;gap:16px;padding-top:16px}.artist-socials a{color:#e2e2e2;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.artist-socials a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}.booking{padding-bottom:140px}.booking-form{gap:22px}.booking-section{min-width:0;margin:0;padding:0 0 24px;border:0;border-bottom:1px solid var(--line)}.booking-section>legend{padding:0 0 16px;color:#eee;font:28px Forum,serif;text-transform:uppercase}.booking-section label{margin-top:12px}.booking-section label:first-of-type{margin-top:0}.form-intro{max-width:440px;margin:0 0 18px;color:#9f9f9f;font-size:14px}.skin-tone{margin:22px 0 0;padding:0;border:0}.skin-tone legend{margin-bottom:10px;color:#aaa;font-size:13px}.skin-tone>div{display:flex;gap:8px}.skin-tone label{position:relative;display:block!important;margin:0!important}.skin-tone input{position:absolute;opacity:0}.skin-tone span{width:33px;height:33px;display:grid;place-items:center;border:1px solid #343434;border-radius:50%;color:#aaa;font-size:12px;cursor:pointer;transition:.2s ease}.skin-tone input:checked+span{border-color:#eee;background:#eee;color:#111}.tattoo-details{display:grid;gap:16px}.tattoo-entry{margin:0;padding:18px;border:1px solid #2a2a2a;background:#090909}.tattoo-entry>legend{padding:0 6px;color:#d4d4d4;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.tattoo-entry legend span{color:#777}.tattoo-entry small{color:#777;font-size:11px}.tattoo-entry input[type=file]{height:auto;padding:10px}.add-tattoo{padding:0;border:0;background:transparent;color:#e4e4e4;font-size:13px;letter-spacing:.06em;text-align:left;text-transform:uppercase;cursor:pointer}.add-tattoo:hover{text-decoration:underline;text-underline-offset:5px}.availability-options{display:grid;gap:10px}.availability-options label{display:flex!important;align-items:center;gap:10px;margin:0!important;color:#bababa!important;font-size:14px!important}.availability-options input{width:18px!important;height:18px!important;margin:0;accent-color:#dedede}.date-range{margin-top:16px}.date-range[hidden]{display:none}@media(max-width:560px){.artists .section-heading h2,.services .section-heading h2{font-size:32px}.artist-card-toggle{width:28px;height:28px}.booking-section>legend{font-size:25px}.tattoo-entry{padding:14px}.skin-tone>div{gap:6px}}

.socials a{width:38px;height:38px;display:grid;place-items:center;border:1px solid #303030;border-radius:50%;transition:border-color .2s ease,color .2s ease,transform .2s ease}.socials a:hover{border-color:#ddd;transform:translateY(-2px)}.socials svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6}

.brand{display:inline-flex;align-items:center}.brand-logo{width:74px;height:48px;object-fit:contain}.footer-bottom .brand-logo{width:88px;height:64px}

.artist-carousel{margin-top:52px}.artist-carousel-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 0 22px}.artist-counter{margin:0;color:#aaa;font-size:13px;letter-spacing:.12em}.artist-counter span{color:#fff}.artist-carousel-actions{display:flex;gap:8px}.artist-carousel-button{width:38px;height:38px;border:1px solid #333;background:transparent;color:#eee;font-size:20px;cursor:pointer;transition:.2s ease}.artist-carousel-button:hover{border-color:#ddd;background:#161616}.artist-viewport{min-width:0}.artists .artist-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 72px)/4);grid-template-columns:none;gap:24px;margin:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 0 12px}.artists .artist-grid::-webkit-scrollbar{display:none}.artists .artist-card{min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.artists .artist-grid:focus{outline:1px solid #555;outline-offset:5px}@media(max-width:809px){.artists .artist-grid{grid-template-columns:none;grid-auto-columns:calc((100% - 20px)/2);gap:20px}}@media(max-width:560px){.artist-carousel{margin-top:38px}.artists .artist-grid{grid-template-columns:none;grid-auto-columns:84%;gap:14px}.artist-carousel-button{width:36px;height:36px}.artist-counter{font-size:12px}}

.artists .artist-card img{object-position:center top}

.artists .artist-card{overflow:hidden;border:1px solid #242424;border-radius:14px;background:#090909}.artists .artist-card img{border-radius:0}.artists .artist-card .card-row{margin:0;padding:12px 12px 12px 14px;border-top:1px solid #242424}.artists .artist-card h3{font-size:18px}.artists .artist-card-toggle{width:34px;height:34px;border-color:#3b3b3b;background:#101010}.artists .artist-details p{padding:0 14px}.artists .artist-card.is-open .artist-details p{padding:18px 14px 0}.artists .artist-socials{padding:16px 14px 18px}.skin-tone>div{display:flex;width:max-content;gap:0;border:1px solid #303030}.skin-tone label{display:block!important;margin:0!important}.skin-tone span{position:relative;width:70px;height:70px;display:block;border:0!important;border-radius:0!important;cursor:pointer}.skin-tone label:nth-child(1) span{background:#f8ded5}.skin-tone label:nth-child(2) span{background:#ddad8b}.skin-tone label:nth-child(3) span{background:#e2a364}.skin-tone label:nth-child(4) span{background:#964414}.skin-tone label:nth-child(5) span{background:#4c2106}.skin-tone input:checked+span{color:#fff!important}.skin-tone input:checked+span::before{position:absolute;top:0;right:0;width:30px;height:30px;background:#4e9a52;clip-path:polygon(100% 0,100% 100%,0 0);content:""}.skin-tone input:checked+span::after{position:absolute;top:2px;right:4px;color:#fff;content:"✓";font-size:14px;font-weight:700}.skin-tone input:focus-visible+span{outline:2px solid #fff;outline-offset:3px}@media(max-width:560px){.artists .artist-card{border-radius:12px}.artists .artist-card-toggle{width:32px;height:32px}.skin-tone span{width:56px;height:56px}}

.hero-collage{z-index:1}.hero-shade{z-index:0}.hero-collage>div:has(img:hover){animation-play-state:paused}.hero-collage img{filter:brightness(.43) saturate(.72) contrast(1.04);backface-visibility:hidden;will-change:transform;transition:transform .32s cubic-bezier(.2,.8,.2,1)}.hero-collage img:hover{z-index:3;transform:translate3d(0,-8px,0) scale(1.045);filter:none;box-shadow:0 16px 32px rgba(0,0,0,.34)}

.booking-section{display:grid;gap:16px}.booking-section>legend{margin:0}.booking-section>label,.booking-section>.form-pair,.booking-section>.availability-options,.booking-section>.date-range{margin:0!important}.booking-section .form-pair{align-items:start;gap:16px}.booking-section .form-pair>label{min-width:0;margin:0!important;align-self:start}.booking-section .skin-tone{margin:2px 0 0}.tattoo-entry{display:grid;gap:16px}.tattoo-entry>label,.tattoo-entry>.form-pair{margin:0!important}.tattoo-entry .form-pair>label{margin:0!important}.availability-options{margin:0}.date-range{margin:0}

.reviews{min-height:0;padding:130px 0}.feedback-grid{grid-template-columns:repeat(3,1fr);gap:0}.review-card{min-height:266px}.review-card blockquote{font-size:20px;line-height:1.5}.review-card footer{gap:20px}.review-stars{color:#ddd;letter-spacing:.12em;font-size:12px}.site-footer{min-height:0;padding:78px 0 28px}.footer-top{grid-template-columns:minmax(0,.85fr) minmax(0,1.2fr) minmax(0,.8fr);gap:72px;align-items:start}.footer-brand{max-width:260px}.footer-brand .brand-logo{width:92px;height:58px}.footer-brand>p{margin:28px 0 0;color:#aaa;line-height:1.6}.footer-label{margin:0;color:#eee;font-size:12px;letter-spacing:.14em;text-transform:uppercase}.footer-contact dl{margin:24px 0 0;grid-template-columns:1fr;gap:20px}.footer-contact dt{font-size:12px;text-transform:uppercase;letter-spacing:.1em}.footer-nav{grid-template-columns:1fr 1fr;gap:34px}.footer-nav-group{display:grid;align-content:start;gap:13px}.footer-nav-group .footer-label{margin-bottom:8px}.footer-nav a{font-size:14px}.footer-bottom{margin-top:58px;padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-bottom a{color:#ddd;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.footer-bottom a:hover{color:#fff}@media(max-width:809px){.footer-top{grid-template-columns:1fr;gap:48px}.footer-brand{max-width:360px}.footer-bottom{margin-top:44px}}@media(max-width:560px){.feedback-grid{grid-template-columns:1fr}.review-card{min-height:230px}.footer-nav{grid-template-columns:1fr 1fr;gap:30px}.footer-bottom{align-items:flex-start;flex-direction:column}}

.artists .artist-card img{height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center top}.review-carousel{margin-top:56px}.review-carousel-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 0 22px}.review-carousel-toolbar>p{margin:0;color:#aaa;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.review-carousel-actions{display:flex;gap:8px}.review-carousel-button{width:38px;height:38px;border:1px solid #333;background:transparent;color:#eee;font-size:20px;cursor:pointer;transition:.2s ease}.review-carousel-button:hover{border-color:#ddd;background:#161616}.feedback-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);grid-template-columns:none;gap:24px;margin:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 0 12px}.feedback-grid::-webkit-scrollbar{display:none}.feedback-grid:focus{outline:1px solid #555;outline-offset:5px}.feedback-grid .review-card{min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.review-card footer{align-items:flex-end}.review-source{color:#ddd;font-size:12px;letter-spacing:.06em;white-space:nowrap}.review-source:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}@media(max-width:809px){.feedback-grid{grid-auto-columns:calc((100% - 20px)/2);gap:20px}}@media(max-width:560px){.artists .artist-card img{height:auto;aspect-ratio:1/1}.review-carousel{margin-top:38px}.review-carousel-toolbar>p{font-size:11px}.feedback-grid{grid-auto-columns:86%;gap:14px}.review-carousel-button{width:36px;height:36px}}

@media(min-width:810px){.about,.artists,.services,.gallery,.reviews,.booking{min-height:0}.about{padding:130px 0 100px}.artists{padding:120px 0 92px}.artist-carousel{margin-top:44px}.services{padding:120px 0 100px}.gallery{padding:100px 0 90px}.reviews{padding:110px 0}.booking{padding:110px 0}}

body.is-loading{overflow:hidden}.site-loader{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#030303;opacity:1;visibility:visible;transform:translateY(0);transition:transform .65s cubic-bezier(.7,0,.3,1),opacity .35s ease,visibility .65s step-end}.site-loader::before{position:absolute;inset:20px;border:1px solid #1d1d1d;content:""}.site-loader-content{position:relative;z-index:1;display:grid;justify-items:center;gap:24px;text-align:center;will-change:transform,opacity}.site-loader-logo{width:132px;height:84px;object-fit:contain}.site-loader-content p{margin:0;color:#aaa;font-size:11px;letter-spacing:.18em;text-transform:uppercase}.site-loader-bar{position:relative;display:block;width:170px;height:1px;overflow:hidden;background:#242424}.site-loader-bar::after{position:absolute;inset:0 auto 0 0;width:42%;background:#eee;content:"";animation:loader-progress 1.15s ease-in-out infinite}.site-loader.is-complete .site-loader-content{animation:loader-logo-rise .82s cubic-bezier(.55,0,.25,1) forwards}.site-loader.is-complete .site-loader-bar::after{animation:none;transform:translateX(140%)}.site-loader.is-hidden{pointer-events:none;opacity:0;visibility:hidden;transform:translateY(-100%)}@keyframes loader-progress{from{transform:translateX(-110%)}to{transform:translateX(360%)}}@keyframes loader-logo-rise{0%{transform:translateY(0);opacity:1}42%{transform:translateY(-8px);opacity:1}100%{transform:translateY(-125px);opacity:0}}@media(prefers-reduced-motion:reduce){.site-loader{transition:none}.site-loader.is-complete .site-loader-content{animation:none;opacity:0}.site-loader-bar::after{animation:none;transform:translateX(72%)}}

.mobile-nav-heading,.mobile-nav-footer{display:none}.mobile-nav-links{display:contents}.mobile-nav-scrim{display:none}
@media(max-width:809px){.site-header{background:rgba(0,0,0,.98)}.menu-toggle{position:relative;z-index:4;display:block;width:42px;height:42px;padding:0;border:1px solid #343434;border-radius:50%;background:#080808;transition:border-color .25s ease,background .25s ease}.menu-toggle span{position:absolute;left:10px;display:block;width:20px;height:1px;margin:0;background:#f1f1f1;transform-origin:center;transition:transform .36s cubic-bezier(.2,.8,.2,1),top .36s cubic-bezier(.2,.8,.2,1)}.menu-toggle span:first-child{top:15px}.menu-toggle span:nth-child(2){top:25px}.menu-toggle[aria-expanded="true"]{border-color:#777;background:#151515}.menu-toggle[aria-expanded="true"] span:first-child{top:20px;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){top:20px;transform:rotate(-45deg)}.main-nav{position:fixed;z-index:3;inset:0 0 0 auto;width:min(100vw,430px);height:100dvh;padding:calc(var(--header) + 36px) 28px 28px;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:0;overflow:auto;background:radial-gradient(circle at 100% 0,rgba(255,255,255,.075),transparent 32%),#070707;border-left:1px solid #303030;box-shadow:-28px 0 70px rgba(0,0,0,.42);transform:translate3d(105%,0,0);transition:transform .52s cubic-bezier(.2,.8,.2,1)}.main-nav.is-open{transform:translate3d(0,0,0)}.mobile-nav-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;color:#999;border-bottom:1px solid #282828;font-size:11px;letter-spacing:.17em;text-transform:uppercase}.mobile-nav-heading span:last-child{color:#eee}.mobile-nav-links{display:grid;width:100%;margin:auto 0;gap:0}.main-nav .mobile-nav-links>a{position:relative;display:flex;align-items:center;min-height:62px;padding:0;border-bottom:1px solid #242424;color:#e8e8e8;font:clamp(34px,10vw,48px)/1 Forum,serif;text-transform:uppercase;letter-spacing:-.035em;opacity:0;transform:translateX(22px);transition:color .2s ease,opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1)}.main-nav .mobile-nav-links>a::after{margin-left:auto;color:#777;font:18px/1 Satoshi,sans-serif;content:"↗";transform:translateX(-5px);transition:transform .22s ease,color .22s ease}.main-nav .mobile-nav-links>a:hover{color:#fff}.main-nav .mobile-nav-links>a:hover::after{color:#fff;transform:translateX(0)}.main-nav .mobile-nav-links>.phone-link{min-height:auto;margin:25px 0 0;padding:0;border:0;color:#aaa;font:14px/1.4 Satoshi,sans-serif;letter-spacing:.02em;text-transform:none}.main-nav .mobile-nav-links>.phone-link::after{display:none}.main-nav .mobile-nav-links>.button{width:100%;min-height:52px;margin-top:24px;border-color:#e8e8e8;background:#e8e8e8;color:#080808;font:500 12px/1 Satoshi,sans-serif;letter-spacing:.13em}.main-nav .mobile-nav-links>.button::after{display:none}.main-nav .mobile-nav-links>.button:hover{background:#fff;transform:none}.main-nav.is-open .mobile-nav-links>a{opacity:1;transform:none}.main-nav.is-open .mobile-nav-links>a:nth-child(1){transition-delay:.12s}.main-nav.is-open .mobile-nav-links>a:nth-child(2){transition-delay:.17s}.main-nav.is-open .mobile-nav-links>a:nth-child(3){transition-delay:.22s}.main-nav.is-open .mobile-nav-links>a:nth-child(4){transition-delay:.27s}.main-nav.is-open .mobile-nav-links>a:nth-child(5){transition-delay:.32s}.main-nav.is-open .mobile-nav-links>a:nth-child(6){transition-delay:.37s}.mobile-nav-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:20px;color:#858585;border-top:1px solid #282828;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.mobile-nav-footer a{color:#ddd}.mobile-nav-footer a:hover{color:#fff}.mobile-nav-scrim{position:fixed;z-index:2;inset:0;display:block;width:100%;height:100%;border:0;background:rgba(0,0,0,.66);opacity:0;pointer-events:none;transition:opacity .4s ease}body.menu-open .mobile-nav-scrim{opacity:1;pointer-events:auto}}
@media(max-width:380px){.main-nav{padding-inline:22px}.main-nav .mobile-nav-links>a{min-height:56px;font-size:34px}}

@media(max-width:809px){.hero{min-height:100svh;padding:var(--header) 16px 0;display:flex;align-items:center;justify-content:center}.hero-content{width:min(100%,390px);margin:0;padding:0;text-align:center}.hero h1{font-size:clamp(46px,12vw,60px);line-height:.98}.hero-content>p{max-width:320px;margin:24px auto 30px}.hero-actions{width:100%}}

.section-heading{position:relative;isolation:isolate;max-width:920px;margin-inline:auto;padding:6px 28px 15px;text-align:center}.section-heading::before{position:absolute;z-index:-1;top:-18px;left:50%;color:rgba(255,255,255,.055);font:400 clamp(88px,11vw,154px)/.72 Forum,serif;letter-spacing:-.08em;content:attr(data-index);transform:translateX(-50%)}.section-heading .eyebrow{position:relative;margin-bottom:17px;color:#b5b5b5;letter-spacing:.28em}.section-heading h2,.artists .section-heading h2,.services .section-heading h2,.gallery .section-heading h2,.reviews .section-heading h2{position:relative;margin:0;font-size:clamp(46px,5.4vw,78px);line-height:.91;letter-spacing:-.045em;text-wrap:balance}.section-heading h2::after{display:block;width:42px;height:1px;margin:25px auto 0;background:#c8c8c8;content:""}@media(max-width:560px){.section-heading{padding-inline:12px}.section-heading::before{top:-11px;font-size:82px}.section-heading .eyebrow{margin-bottom:14px;font-size:11px;letter-spacing:.22em}.section-heading h2,.artists .section-heading h2,.services .section-heading h2,.gallery .section-heading h2,.reviews .section-heading h2{font-size:clamp(39px,11.5vw,50px);line-height:.93}.section-heading h2::after{margin-top:20px}}

.footer-bottom .back-to-top{display:grid;width:42px;height:42px;padding:0;place-items:center;border:1px solid #3a3a3a;border-radius:50%;color:#eee;font:23px/1 Satoshi,sans-serif;text-decoration:none;transition:transform .22s ease,border-color .22s ease,background .22s ease}.footer-bottom .back-to-top:hover{border-color:#eee;background:#181818;transform:translateY(-4px)}

.booking-form select{padding-right:52px;appearance:none;-webkit-appearance:none;background-color:#1b1b1b;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23d9d9d9' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right 18px center;background-repeat:no-repeat;background-size:12px 8px;cursor:pointer}.booking-form select:focus{background-color:#202020}
