@font-face{font-family:Anton;src:url(/fonts/Anton-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-300.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-500.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-600.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-300.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-600.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-700.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Playfair Display;src:url(/fonts/PlayfairDisplay-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Playfair Display;src:url(/fonts/PlayfairDisplay-400-italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Playfair Display;src:url(/fonts/PlayfairDisplay-700.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--surface-000:#070505;--surface-100:#120808;--surface-200:#1c0d0b;--surface-charcoal:#181212;--ember:#8e0606;--lacquer:#b02e22;--signal:#d4122a;--signal-text:#ea2a3a;--glow:#4a0c08;--bone:#e8e2dc;--bone-muted:#a8968f;--bone-faint:#8a7a74;--hairline:#e8e2dc29;--focus:var(--bone);--font-condensed:Anton, "Arial Narrow", Impact, sans-serif;--font-geometric:Montserrat, "Century Gothic", system-ui, sans-serif;--font-body:Poppins, Montserrat, system-ui, sans-serif;--font-serif:"Playfair Display", Georgia, serif;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:40px;--space-6:64px;--space-7:104px;--radius-none:0;--radius-sm:4px;--radius-card:20px;--shadow-glow:0 0 48px #d4122a59;--shadow-lift:0 16px 40px #000000b3}.t-display-condensed{font-family:var(--font-condensed);font-size:var(--fs-display-condensed,96px);letter-spacing:0;font-weight:400;line-height:.92}.t-headline{font-family:var(--font-condensed);font-size:var(--fs-headline,56px);font-weight:400;line-height:1}.t-headline-sm{font-family:var(--font-condensed);font-size:var(--fs-headline-sm,32px);font-weight:400;line-height:1.05}.t-display-italic{font-family:var(--font-serif);font-size:var(--fs-display-italic,72px);font-style:italic;font-weight:400;line-height:1.05}.t-title-serif{font-family:var(--font-serif);font-size:var(--fs-title-serif,40px);font-weight:400;line-height:1.1}.t-tagline{font-family:var(--font-geometric);font-size:var(--fs-tagline,28px);letter-spacing:.01em;font-weight:400;line-height:1.15}.t-service{font-family:var(--font-geometric);font-size:var(--fs-service,22px);font-weight:400;line-height:1.3}.t-price{font-family:var(--font-serif);font-size:var(--fs-price,32px);font-weight:400;line-height:1.1}.t-body{font-family:var(--font-body);font-size:var(--fs-body,17px);font-weight:300;line-height:1.6}.t-body-strong{font-family:var(--font-body);font-size:var(--fs-body-strong,17px);font-weight:600;line-height:1.6}.t-contact{font-family:var(--font-geometric);font-size:var(--fs-contact,15px);letter-spacing:.04em;font-weight:400;line-height:1.4}.t-label{font-family:var(--font-geometric);font-size:var(--fs-label,13px);letter-spacing:.18em;font-weight:500;line-height:1.3}.koi-root{background:var(--surface-000);color:var(--bone);font-family:var(--font-body)}.koi-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-4);border-radius:var(--radius-none);font-family:var(--font-geometric);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;font-size:13px;font-weight:500;text-decoration:none;transition:background-color .3s,border-color .3s;display:inline-flex}.koi-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.koi-btn--primary{background:var(--lacquer);color:var(--bone)}.koi-btn--primary:hover{background:var(--ember)}.koi-btn--secondary{color:var(--bone);border-color:var(--lacquer);background:0 0}.koi-btn--secondary:hover{border-color:var(--bone)}.koi-price-card{border-radius:var(--radius-card);background:linear-gradient(var(--surface-200), var(--surface-100));width:300px;box-shadow:var(--shadow-lift);text-align:center;flex-direction:column;display:flex;overflow:hidden}.koi-price-card--featured{box-shadow:var(--shadow-glow)}.koi-price-card__media{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-card);width:100%;display:block}.koi-price-card__body{gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-5);flex-direction:column;display:flex}.koi-price-card__title{font-family:var(--font-serif);color:var(--bone);margin:0;font-size:40px;font-weight:400;line-height:1.1}.koi-price-card__desc{font-family:var(--font-body);color:var(--bone-muted);margin:0;font-size:17px;font-weight:300;line-height:1.6}.koi-price-card__price{font-family:var(--font-serif);color:var(--bone);margin:0;font-size:32px;line-height:1.1}.koi-extras{padding:var(--space-5) var(--space-5);border-radius:var(--radius-card);background:var(--surface-100)}.koi-extras__title{margin:0 0 var(--space-4);text-align:center;font-family:var(--font-serif);color:var(--bone);text-transform:uppercase;font-size:32px;font-weight:400}.koi-extras__grid{column-gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0;display:grid}.koi-extras__row{padding:var(--space-1) 0;font-family:var(--font-body);justify-content:space-between;font-size:17px;line-height:1.6;display:flex}.koi-extras__row dt{color:var(--bone);font-weight:600}.koi-extras__row dd{color:var(--bone-muted);font-variant-numeric:tabular-nums;margin:0;font-weight:400}.koi-contact{justify-content:space-between;gap:var(--space-2) var(--space-5);padding:var(--space-4) 0;border-top:1px solid var(--hairline);font-family:var(--font-geometric);letter-spacing:.04em;text-transform:uppercase;color:var(--bone-muted);flex-wrap:wrap;font-size:15px;line-height:1.4;display:flex}.koi-contact__name{color:var(--signal-text);font-weight:600}.koi-contact a{color:inherit;text-decoration:none}.koi-contact a:hover{color:var(--bone)}.koi-contact a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.koi-services{justify-content:center;gap:var(--space-2) 0;font-family:var(--font-geometric);color:var(--signal-text);flex-wrap:wrap;margin:0;padding:0;font-size:22px;line-height:1.3;list-style:none;display:flex}.koi-services li+li:before{content:"|";padding:0 var(--space-4);color:var(--lacquer)}*,:before,:after{box-sizing:border-box}html{background:var(--surface-000);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-text-size-adjust:100%}body{background:var(--surface-000);color:var(--bone);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;font-weight:300;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--signal-text);text-underline-offset:3px}a:hover{color:var(--bone)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}h1,h2,h3,p{margin:0}.upper{text-transform:uppercase}.muted{color:var(--bone-muted)}.faint{color:var(--bone-faint)}.signal{color:var(--signal)}.lacquer{color:var(--lacquer)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:root{--fs-display-condensed:clamp(56px, 11vw, 96px);--fs-headline:clamp(40px, 7vw, 56px);--fs-display-italic:clamp(44px, 8vw, 72px);--fs-title-serif:clamp(30px, 5vw, 40px);--fs-tagline:clamp(20px, 3.4vw, 28px);--fs-service:clamp(17px, 2.6vw, 22px);--gutter:clamp(16px, 6vw, var(--space-6))}.wrap{width:100%;max-width:1280px;padding:0 var(--gutter);margin:0 auto}.section{padding:var(--space-7) 0}.section+.section{padding-top:0}.stack>*+*{margin-top:var(--space-3)}.stack-lg>*+*{margin-top:var(--space-5)}.rule{border:0;border-top:1px solid var(--lacquer);margin:0}.hair{border:0;border-top:1px solid var(--hairline);margin:0}.eyebrow{font-family:var(--font-geometric);letter-spacing:.18em;text-transform:uppercase;color:var(--signal-text);font-size:13px;font-weight:500}.prose{max-width:62ch}.prose p+p{margin-top:var(--space-3)}.site-header{z-index:10;background:color-mix(in srgb, var(--surface-000) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--hairline);position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:72px;display:flex}.brand{align-items:center;gap:var(--space-3);color:var(--bone);text-decoration:none;display:flex}.brand img{width:44px;height:44px}.nav{align-items:center;gap:var(--space-5);display:flex}.nav a{font-family:var(--font-geometric);letter-spacing:.18em;text-transform:uppercase;color:var(--bone-muted);padding:var(--space-2) 0;border-bottom:1px solid #0000;font-size:13px;font-weight:500;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--bone);border-bottom-color:var(--lacquer)}.nav .koi-btn,.nav .koi-btn:hover{padding:0 var(--space-4);color:var(--bone);border:0}.menu{display:none}@media (width<=860px){.nav{display:none}.menu{display:block;position:relative}.menu summary{cursor:pointer;list-style:none}.menu summary::-webkit-details-marker{display:none}.menu[open] .nav{padding:var(--space-3) var(--gutter) var(--space-5);background:var(--surface-000);border-bottom:1px solid var(--lacquer);flex-direction:column;align-items:flex-start;gap:0;display:flex;position:fixed;inset:72px 0 auto}.menu[open] .nav a{width:100%;padding:var(--space-3) 0;border-bottom:1px solid var(--hairline)}}.hero{isolation:isolate;align-items:flex-end;min-height:min(88vh,820px);display:flex;position:relative;overflow:hidden}.hero__media{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero:before{content:"";z-index:-1;background:radial-gradient(ellipse at 70% 30%, transparent 0%, var(--surface-000) 75%), linear-gradient(to top, var(--surface-000) 4%, transparent 55%);position:absolute;inset:0}.hero__inner{padding-top:var(--space-7);padding-bottom:var(--space-6)}.hero--short{min-height:52vh}.glow{background:radial-gradient(circle at 50% 45%, var(--glow) 0%, transparent 62%)}.split{gap:var(--space-6);grid-template-columns:1fr 1fr;align-items:center;display:grid}.split--flip>:first-child{order:2}.split img{aspect-ratio:4/5;object-fit:cover;width:100%}@media (width<=860px){.split{gap:var(--space-5);grid-template-columns:1fr}.split--flip>:first-child{order:0}}.cards{gap:var(--space-4);flex-wrap:wrap;display:flex}.cards .koi-price-card{flex:280px;width:auto;max-width:380px}.hours{gap:var(--space-2) var(--space-5);grid-template-columns:max-content 1fr;margin:0;display:grid}.hours dt{font-family:var(--font-geometric);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.hours dd{color:var(--bone-muted);margin:0}.event-list{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));display:grid}.event-card{background:var(--surface-100);border-top:1px solid var(--lacquer);color:var(--bone);flex-direction:column;text-decoration:none;transition:background-color .3s;display:flex}.event-card:hover{background:var(--surface-200);color:var(--bone)}.event-card img{aspect-ratio:4/5;object-fit:cover;width:100%}.event-card__body{padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.event-card__ph{aspect-ratio:4/5;place-items:center;display:grid}.event-card__ph img{aspect-ratio:1;width:40%}.rules{margin:0;padding-left:1.2em}.rules li+li{margin-top:var(--space-2)}.rules li::marker{color:var(--lacquer)}.rules strong{color:var(--bone);font-weight:600}.site-footer{padding:var(--space-6) 0 var(--space-4)}.site-footer .foot-nav{gap:var(--space-2) var(--space-5);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.site-footer .foot-nav a{color:var(--bone-muted);font-family:var(--font-geometric);letter-spacing:.18em;text-transform:uppercase;font-size:13px;font-weight:500;text-decoration:none}.site-footer .foot-nav a:hover{color:var(--bone)}@media (prefers-reduced-motion:reduce){*{transition:none!important}}img[src*=koi-monogram]{mix-blend-mode:lighten}
