:root{--bg: #FFFFFF;--ink: #0D0D0D;--ink-60: rgba(13, 13, 13, .6);--ink-40: rgba(13, 13, 13, .4);--ink-15: rgba(13, 13, 13, .15);--ink-08: rgba(13, 13, 13, .08);--accent: #C8F53F;--mono: "Space Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--sans: "Inter Tight", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--gutter: clamp(20px, 4vw, 56px);--rule: 1px solid var(--ink)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}::selection{background:var(--accent);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}img{display:block;max-width:100%}.mono{font-family:var(--mono);text-transform:uppercase;letter-spacing:-.02em}.eyebrow{font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.08em;color:var(--ink-60);font-weight:400}header.site{position:fixed;top:0;left:0;right:0;z-index:100;background:var(--bg);border-bottom:var(--rule);transition:transform .3s ease}header.site.hidden{transform:translateY(-100%)}.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:18px var(--gutter)}.brand{font-family:var(--mono);font-weight:700;text-transform:uppercase;font-size:14px;letter-spacing:-.02em;display:flex;align-items:center;gap:10px}.brand .dot{width:8px;height:8px;background:var(--accent);display:inline-block}nav.primary ul{display:flex;gap:clamp(16px,2.5vw,36px);list-style:none;align-items:center}nav.primary a{font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.06em;font-weight:400;position:relative;padding:4px 0;transition:color .2s ease}nav.primary a:after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--ink);transition:width .25s ease}nav.primary a:hover:after{width:100%}.nav-cta{font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.06em;padding:10px 16px;background:var(--ink);color:var(--bg);transition:background .2s ease,color .2s ease}.nav-cta:hover{background:var(--accent);color:var(--ink)}.menu-toggle{display:none}@media(max-width:760px){nav.primary,.nav-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:4px;padding:6px}.menu-toggle span{width:22px;height:1.5px;background:var(--ink);display:block}nav.primary.open{display:block;position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:var(--rule)}nav.primary.open ul{flex-direction:column;align-items:flex-start;padding:24px var(--gutter);gap:18px}}.hero{padding-top:65px;min-height:100vh;display:flex;flex-direction:column;border-bottom:var(--rule);position:relative}.hero-meta{display:flex;justify-content:space-between;align-items:baseline;padding:24px var(--gutter) 0;gap:16px;flex-wrap:wrap}.hero-meta .left,.hero-meta .right{font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.06em;color:var(--ink-60)}.hero-meta .right{text-align:right}.hero-wordmark{flex:1;display:flex;align-items:center;justify-content:center;padding:40px var(--gutter);position:relative}.hero-wordmark h1{font-family:var(--mono);font-weight:700;text-transform:uppercase;font-size:clamp(120px,22vw,360px);line-height:.82;letter-spacing:-.06em;width:100%;text-align:left;position:relative}.hero-wordmark h1 .period{color:var(--accent)}.hero-bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;padding:0 var(--gutter) 32px;gap:24px}.hero-tagline{font-family:var(--sans);font-size:clamp(14px,1.05vw,16px);font-weight:400;line-height:1.4;max-width:260px;color:var(--ink)}.hero-tagline .pill{display:inline-block;width:10px;height:10px;background:var(--accent);margin-right:6px;transform:translateY(1px)}.hero-cta{justify-self:center;display:inline-flex;align-items:center;gap:14px;background:var(--ink);color:var(--bg);padding:22px 36px;font-family:var(--mono);text-transform:uppercase;font-size:13px;letter-spacing:.08em;transition:background .2s ease,color .2s ease}.hero-cta:hover{background:var(--accent);color:var(--ink)}.hero-cta .arrow{display:inline-block;transition:transform .2s ease}.hero-cta:hover .arrow{transform:translate(4px)}.hero-coords{justify-self:end;text-align:right;font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.06em;color:var(--ink-60);line-height:1.7}.hero-coords strong{color:var(--ink);font-weight:400}@media(max-width:760px){.hero-bottom{grid-template-columns:1fr;gap:28px}.hero-cta{justify-self:stretch;justify-content:center}.hero-coords{justify-self:stretch;text-align:left}.hero-tagline{max-width:none}}section{padding:clamp(48px,6vw,88px) var(--gutter);border-bottom:var(--rule);position:relative}.sec-head{display:grid;grid-template-columns:80px 1fr;gap:24px;margin-bottom:clamp(40px,6vw,72px);align-items:baseline}.sec-head .num{font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.06em;color:var(--ink-60)}.sec-head h2{font-family:var(--mono);font-weight:700;text-transform:uppercase;font-size:clamp(28px,4vw,56px);letter-spacing:-.04em;line-height:1}@media(max-width:600px){.sec-head{grid-template-columns:1fr;gap:8px}}.intro-statement{margin-left:104px;max-width:1100px;font-family:var(--mono);font-weight:400;text-transform:uppercase;font-size:clamp(28px,4.2vw,64px);letter-spacing:-.035em;line-height:1.05}.intro-statement .lt{color:var(--ink-40)}.intro-statement .acc{color:var(--accent);background:var(--ink);padding:0 .08em}@media(max-width:600px){.intro-statement{margin-left:0}}.services-list{list-style:none}.service-row{display:grid;grid-template-columns:80px 1fr auto auto;align-items:center;gap:24px;padding:clamp(24px,3vw,36px) 0;border-top:var(--rule);cursor:pointer;transition:padding-left .3s cubic-bezier(.4,0,.2,1),background .3s ease;position:relative}.service-row:last-child{border-bottom:var(--rule)}.service-row:hover{padding-left:16px}.service-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--accent);transition:width .3s cubic-bezier(.4,0,.2,1)}.service-row:hover:before{width:6px}.service-num{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-60)}.service-name{font-family:var(--mono);font-weight:700;text-transform:uppercase;font-size:clamp(26px,3.6vw,48px);letter-spacing:-.035em;line-height:1}.service-meta{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-60);text-transform:uppercase;justify-self:end}.service-arrow{font-family:var(--mono);font-size:18px;color:var(--ink);transition:transform .3s ease}.service-row:hover .service-arrow{transform:translate(6px)}@media(max-width:760px){.service-row{grid-template-columns:40px 1fr auto;gap:14px}.service-meta{display:none}}.about-grid{display:grid;grid-template-columns:80px 1.1fr 1fr;gap:48px;align-items:start}.about-grid .num{color:var(--ink-60);font-family:var(--mono);font-size:11px;letter-spacing:.06em}.about-text h2{font-family:var(--mono);text-transform:uppercase;font-weight:700;font-size:clamp(28px,4vw,56px);letter-spacing:-.04em;line-height:1;margin-bottom:32px}.about-bio{font-family:var(--sans);font-size:clamp(18px,1.6vw,24px);line-height:1.4;font-weight:400;color:var(--ink);text-wrap:pretty;max-width:520px}.about-bio+.about-bio{margin-top:18px}.about-credits{margin-top:40px;border-top:var(--rule);padding-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:420px}.about-credit-label{font-family:var(--mono);text-transform:uppercase;font-size:10px;letter-spacing:.06em;color:var(--ink-60);display:block;margin-bottom:6px}.about-credit-value{font-family:var(--mono);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:0}.about-photo{aspect-ratio:4/5;background:var(--ink-08);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 8px,rgba(13,13,13,.06) 8px,rgba(13,13,13,.06) 9px);position:relative;display:flex;align-items:flex-end;justify-content:flex-start;padding:24px;border:var(--rule)}.about-photo:before{content:"";position:absolute;top:16px;right:16px;bottom:16px;left:16px;border:1px dashed var(--ink-40);pointer-events:none}.about-photo span{font-family:var(--mono);text-transform:uppercase;font-size:10px;letter-spacing:.06em;color:var(--ink-60);background:var(--bg);padding:6px 8px;position:relative;z-index:1}@media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:32px}.about-photo{max-width:420px}}.gallery-section{padding-bottom:0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:var(--rule)}.g-cell{aspect-ratio:1/1;background:var(--ink-08);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 10px,rgba(13,13,13,.09) 10px,rgba(13,13,13,.09) 11px);position:relative;overflow:hidden;cursor:pointer;transition:background-color .3s ease}.g-cell:after{content:attr(data-label);position:absolute;top:12px;left:12px;font-family:var(--mono);text-transform:uppercase;font-size:9px;letter-spacing:.06em;color:var(--ink-60);background:var(--bg);padding:4px 6px}.g-cell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent);opacity:0;mix-blend-mode:multiply;transition:opacity .3s ease;pointer-events:none}.g-cell:hover:before{opacity:.6}.gallery{border-bottom:var(--rule)}.g-cell{box-shadow:inset 0 0 0 .5px #0d0d0d26}@media(max-width:700px){.gallery{grid-template-columns:repeat(2,1fr)}}.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(40px,5vw,80px)}.testimonial{border-top:var(--rule);padding-top:28px;display:flex;flex-direction:column;gap:28px}.testimonial-quote{font-family:var(--sans);font-weight:400;font-size:clamp(18px,1.5vw,22px);line-height:1.4;color:var(--ink);text-wrap:pretty;flex:1}.testimonial-quote:before{content:'"';font-family:var(--mono);color:var(--accent);margin-right:2px;font-weight:700}.testimonial-quote:after{content:'"';font-family:var(--mono);color:var(--accent);font-weight:700}.testimonial-meta{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.06em}.testimonial-name{font-weight:700}.testimonial-service{color:var(--ink-60)}.testimonial-stars{color:var(--ink);letter-spacing:1px}@media(max-width:800px){.testimonials{grid-template-columns:1fr;gap:32px}}.booking-band{background:var(--ink);color:var(--bg);padding:clamp(48px,6vw,88px) var(--gutter);border-bottom:var(--rule);position:relative;overflow:hidden}.booking-band:before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:var(--accent)}.booking-statement{font-family:var(--mono);font-weight:700;text-transform:uppercase;font-size:clamp(36px,6vw,96px);letter-spacing:-.045em;line-height:.95;margin-bottom:48px;text-wrap:balance;max-width:1200px}.booking-statement .acc{color:var(--accent)}.booking-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.booking-cta{display:inline-flex;align-items:center;gap:14px;background:var(--accent);color:var(--ink);padding:24px 40px;font-family:var(--mono);text-transform:uppercase;font-size:14px;font-weight:700;letter-spacing:.06em;transition:transform .2s ease}.booking-cta:hover{transform:translate(2px,-2px);box-shadow:-4px 4px 0 var(--accent)}.booking-cta .arrow{transition:transform .2s ease}.booking-cta:hover .arrow{transform:translate(4px)}.booking-note{font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.06em;color:#ffffff80}.contact-grid{display:grid;grid-template-columns:80px 1fr 1.2fr;gap:clamp(32px,4vw,64px);align-items:start}.contact-info{display:flex;flex-direction:column;gap:36px}.contact-block .label{font-family:var(--mono);text-transform:uppercase;font-size:10px;letter-spacing:.08em;color:var(--ink-60);display:block;margin-bottom:10px;padding-bottom:8px;border-bottom:var(--rule)}.contact-block .value{font-family:var(--mono);font-weight:400;font-size:clamp(15px,1.2vw,18px);text-transform:uppercase;letter-spacing:-.01em;line-height:1.4}.contact-block .value strong{font-weight:700}.hours-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--ink-08);font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.hours-row:last-child{border-bottom:none}.hours-row .day{color:var(--ink)}.hours-row .time{color:var(--ink-60)}.hours-row.closed .time{color:var(--ink-40)}.contact-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:8px}.field label{font-family:var(--mono);text-transform:uppercase;font-size:10px;letter-spacing:.08em;color:var(--ink-60)}.field input,.field textarea,.field select{font-family:var(--sans);font-size:16px;color:var(--ink);background:transparent;border:none;border-bottom:var(--rule);padding:10px 0;outline:none;transition:border-color .2s ease,padding-left .2s ease}.field input:focus,.field textarea:focus,.field select:focus{border-bottom-color:var(--accent);border-bottom-width:2px;padding-bottom:9px;padding-left:4px}.field textarea{resize:vertical;min-height:100px;font-family:var(--sans)}.field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' stroke='%230D0D0D' fill='none' stroke-width='1.2'/></svg>");background-repeat:no-repeat;background-position:right 4px center;padding-right:24px}.form-submit{display:inline-flex;align-items:center;gap:14px;background:var(--ink);color:var(--bg);padding:18px 28px;font-family:var(--mono);text-transform:uppercase;font-size:12px;letter-spacing:.08em;align-self:flex-start;margin-top:12px;transition:background .2s ease,color .2s ease}.form-submit:hover{background:var(--accent);color:var(--ink)}.form-submit .arrow{transition:transform .2s ease}.form-submit:hover .arrow{transform:translate(4px)}.form-success{background:var(--accent);color:var(--ink);padding:16px 20px;font-family:var(--mono);text-transform:uppercase;font-size:12px;letter-spacing:.06em;display:none;align-items:center;gap:12px}.form-success.show{display:flex}@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:48px}.form-row{grid-template-columns:1fr}}footer.site{padding:56px var(--gutter) 32px;background:var(--bg)}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-bottom:56px;border-bottom:var(--rule)}.footer-brand{font-family:var(--mono);font-weight:700;text-transform:uppercase;font-size:clamp(40px,5vw,72px);letter-spacing:-.04em;line-height:.9}.footer-brand .acc{color:var(--accent)}.footer-brand .sub{font-size:12px;font-weight:400;color:var(--ink-60);letter-spacing:.06em;display:block;margin-top:16px}.footer-col h4{font-family:var(--mono);text-transform:uppercase;font-size:10px;letter-spacing:.08em;color:var(--ink-60);font-weight:400;margin-bottom:16px;padding-bottom:8px;border-bottom:var(--rule)}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}.footer-col a{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.04em;transition:color .2s ease}.footer-col a:hover{color:var(--accent);background:var(--ink);padding:0 4px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;font-family:var(--mono);text-transform:uppercase;font-size:10px;letter-spacing:.06em;color:var(--ink-60);gap:16px;flex-wrap:wrap}@media(max-width:800px){.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:6px;transform:translateY(-1px);animation:pulse-dot 1.6s infinite}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.reveal.in{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
