/* Official kat aesthetics. identity: black, silver and softly textured grey. */
:root{--paper:#f7f7f7;--cream:#e8e8e8;--rose:#575757;--rose-dark:#252525;--ink:#121212;--muted:#626262;--line:#cacaca;--plum:#191919;--gold:#c6c6c6;--peach:#3d3d3d}
.header{height:108px;background:#f7f7f7f5;border-bottom:1px solid #c0c0c070}.nav-wrap{gap:28px}.header .logo.brand-logo{width:clamp(210px,23vw,295px);text-align:left;line-height:1;display:block}.brand-logo .brand-logo-crop{display:block;position:relative;overflow:hidden;width:100%;aspect-ratio:4.35;font-size:inherit;letter-spacing:0;line-height:1}.brand-logo-crop img{position:absolute;width:106%;max-width:none;height:auto;left:-3%;top:-52%;filter:grayscale(1);mix-blend-mode:normal}.header nav{gap:25px}.header nav a{font-size:.8rem}.nav-book{background:#171717;border-color:#171717;color:#f7f7f7;font-size:.7rem;padding:14px 24px;white-space:nowrap}.menu-toggle span{background:#161616}
.hero{background:#d1d1d1;color:#111111;height:calc(100svh - 108px)}.hero:before{background-image:linear-gradient(110deg,#e7e7e7dc 0%,#dcdcdc60 45%,#9a9a9a70 100%),url('assets/kat-brand.jpg');background-size:cover,100% 900%;background-position:center,center top;opacity:1}.hero-copy{isolation:isolate}.hero .eyebrow{color:#3a3a3a}.hero .line{background:#656565}h1{color:#121212}h1 i{color:#4e4e4e}.hero-description{color:#414141}.hero-actions .button{background:#131313;color:#ffffff;border-color:#131313}.hero-actions .button:hover{background:#353535}.hero-explore{color:#262626;border-bottom-color:#777777}.hero-signature{color:#545454}.hero-signature i{color:#262626}.hero-bottom{border-top-color:#72727255}.hero-bottom-note{color:#525252}.scroll-cue{color:#3b3b3b}.scroll-cue>span{border-color:#76767670}.hero .motion-toggle{color:#292929;border-color:#6c6c6c60}.scene-backdrop{background:radial-gradient(ellipse,#ffffff44 0%,#76767618 35%,transparent 68%)}.scene-word{color:#ffffff20;font-style:italic;font-size:clamp(9rem,20vw,25rem);top:23%;left:6%}.scene-outline{border-color:#56565626}.scene-coordinate{color:#575757;font-size:.54rem}.scene-instruction{color:#414141}.scene-palettes button[aria-pressed=true]{border-color:#393939}.scene-palettes span{background:linear-gradient(135deg,#ffffff,#c2c2c2 45%,#515151 78%,#e7e7e7)}.scene-palettes button:nth-child(2) span{background:linear-gradient(135deg,#aaaaaa,#353535 62%,#121212)}.scene-palettes button:nth-child(3) span{background:linear-gradient(135deg,#ffffff,#efefef 50%,#b6b6b6)}
.fallback-rings>span{border-color:var(--fallback-metal,#c2c2c2);box-shadow:inset 3px 3px 9px #ffffff,5px 4px 7px #26262690,-3px -2px 5px #ffffffe0}.fallback-rings>span:nth-child(4){box-shadow:0 1px 3px #ffffff}.fallback-pearl{background:radial-gradient(circle at 32% 24%,#ffffff 0%,#f7f7f7 17%,#cdcdcd 48%,#717171 79%,#e4e4e4 100%);box-shadow:inset -8px -10px 20px #3e3e3e55,0 22px 40px #2c2c2c25}.fallback-satellite{background:radial-gradient(circle at 30% 24%,#ffffff,#f0f0f0 20%,#9c9c9c 63%,#3b3b3b 88%);box-shadow:0 8px 20px #26262660}
.marquee{background:#171717;color:#f1f1f1;border-color:#2d2d2d}.marquee-track i{color:#b7b7b7}.marquee-track>span{font-size:1.35rem;letter-spacing:.2em}.treatments{background:#f7f7f7}.card-number{color:#ffffffaa;text-shadow:0 2px 5px #00000055}.circle-arrow{background:#fafafa;color:#262626}.about{background:#dddddd}.about-image{box-shadow:12px 18px 0 #f6f6f655}.about-copy .script{color:#464646}.reviews{background:#1a1a1a;color:#f4f4f4}.reviews .eyebrow{color:#bcbcbc}.reviews h2 i{color:#cccccc}.reviews blockquote{color:#e6e6e6}.reviews .stars{color:#dcdcdc}.reviews .placeholder-note{color:#bababa}.reviews .quote-mark{color:#a1a1a1}.review-controls button{border-color:#bcbcbc50}.review-controls button:hover{background:#e4e4e4;color:#212121}.cta{background:#c5c5c5;color:#181818}.cta .eyebrow{color:#484848}.cta h2 i{color:#525252}.cta .light{background:#171717;border-color:#171717;color:#ffffff}.cta-heart{color:#63636325}.contact-form{background:#eeeeee;border-color:#cdcdcd}.contact-form .form-note{background:#e3e3e3}input:not([type=checkbox]):not([type=radio]),select,textarea{background:#fcfcfc}.form-note{background:#e6e6e6;border-left-color:#969696;color:#484848}.booking-summary{background:#e6e6e6}.treatment-options label:has(:checked){background:#e7e7e7}.filter.active{background:#1b1b1b;border-color:#1b1b1b}.success-icon{color:#4b4b4b}
footer{background:#161616;color:#f2f2f2}.footer-main .logo.brand-logo{width:min(380px,40%);display:block}.footer-main .brand-logo-crop img{filter:grayscale(1);mix-blend-mode:normal}.footer-main .script{color:#c6c6c6}.footer-bottom{border-color:#ababab35;color:#bbbbbb}.section-heading>p{border-left-color:#7b7b7b}.button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#525252}
/* Keep every surface neutral; the supplied photography retains natural skin tones. */
.hero,.marquee,.about,.reviews,.cta,footer{filter:grayscale(1)}
@media(max-width:1150px){.nav-wrap{gap:20px}.header .logo.brand-logo{width:230px}.header nav{gap:18px}.header nav a{font-size:.73rem}.nav-book{padding:12px 19px;font-size:.65rem}}
@media(max-width:900px){.header{height:91px}.header nav{top:90px}.header .logo.brand-logo{width:240px}.hero{height:auto}.nav-book{padding:11px 22px}.footer-main .logo.brand-logo{width:300px}}
@media(max-width:600px){.header{height:82px}.nav-wrap{padding:0 5%;gap:9px}.header nav{top:81px;background:#f7f7f7}.header .logo.brand-logo{width:clamp(160px,45vw,205px);flex-shrink:1}.nav-book{font-size:.58rem;padding:10px 14px;min-height:39px;gap:10px}.menu-toggle{width:33px;padding:5px;flex-shrink:0}.hero{height:auto}.hero:before{background-image:linear-gradient(130deg,#e7e7e7e8 0%,#cccccc9c 57%,#a6a6a690 100%),url('assets/kat-brand.jpg');background-size:cover,100% 1100%}.hero .eyebrow{color:#464646}.hero-description{color:#454545}.scene-coordinate{font-size:.44rem}.scene-word{font-size:70vw;top:24%;left:20%;color:#ffffff22}.hero .motion-toggle{font-size:.5rem}.footer-main .logo.brand-logo{width:100%;max-width:330px}.footer-main .script{font-size:1.45rem;text-align:left}.footer-main{align-items:flex-start}.footer-bottom{color:#bbbbbb}.contact-form{background:#eeeeee}}
@media(max-width:370px){.header .logo.brand-logo{width:155px}.nav-book{font-size:.52rem;padding:9px 11px}.nav-wrap{gap:7px}.menu-toggle{width:31px}.hero .eyebrow{font-size:.45rem}}
