@import "https://fonts.googleapis.com/css2?family=Comfortaa:wght@400;600;700&family=Fraunces:opsz,wght@9..144,700;9..144,900&display=swap";:root{color:#fff;--black:#090706;--ink:#17100d;--champagne:#f4cf9c;--pearl:#fff8ec;--rose:#eab4aa;--bronze:#a7663e;--muted:#fff8ecb3;--card-step:33.333%;background:#090706;font-family:Comfortaa,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#fff;background:radial-gradient(circle at 80% 0,#40231c 0,#0c0807 38%,#070504 100%);margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.topbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#080605b8;border:1px solid #f4cf9c40;border-radius:999px;justify-content:space-between;align-items:center;width:min(1180px,100% - 28px);padding:10px 12px 10px 18px;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 20px 70px #0000004d}.brand{align-items:center;gap:10px;font-weight:700;display:flex}.brand img{object-fit:cover;background:#fff;border-radius:50%;width:42px;height:32px}.desktop-nav{color:var(--muted);gap:28px;font-size:14px;display:flex}.header-actions,.cta-row,.visit-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ghost,.primary,.dark,.header-actions a,.service-card a,.visit-actions a{border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;transition:transform .25s,background .25s,border .25s;display:inline-flex}.primary{color:#170c07;background:linear-gradient(135deg,#fff4d9,#f3c17e);font-weight:800}.ghost{background:#ffffff0d;border:1px solid #fff8ec47}.dark{background:#17100d;border:1px solid #f4cf9c47}.big{min-height:54px}.ghost:hover,.primary:hover,.dark:hover,.service-card a:hover,.visit-actions a:hover{transform:translateY(-2px)}.menu-btn{color:#fff;background:0 0;border:0;display:none}.mobile-panel{z-index:40;background:#120d0b;border-left:1px solid #f4cf9c4d;flex-direction:column;gap:22px;width:min(360px,100%);height:100dvh;padding:28px;transition:transform .35s;display:flex;position:fixed;inset:0 0 auto auto;transform:translate(100%)}.mobile-panel.show{transform:translate(0)}.close{color:#fff;background:0 0;border:0;align-self:flex-end}.hero{grid-template-columns:1.02fr .98fr;align-items:center;gap:46px;min-height:100svh;padding:130px max(24px,50vw - 590px) 80px;display:grid;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--champagne);align-items:center;gap:8px;font-size:12px;font-weight:700;display:inline-flex}.hero h1{letter-spacing:-.04em;margin:18px 0;font-family:Fraunces,serif;font-size:clamp(56px,8vw,116px);line-height:.88}.hero h1 span{display:block;overflow:visible}.hero-text{color:var(--muted);max-width:680px;font-size:clamp(17px,2vw,22px);line-height:1.7}.note,.fineprint{color:#fff8ec9e;font-size:13px}.hero-card{background:linear-gradient(145deg,#ffffff29,#ffffff0a);border:1px solid #f4cf9c3d;border-radius:48px;min-height:620px;padding:26px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff38,0 40px 100px #00000073}.hero-logo{object-fit:cover;z-index:2;background:#fff;border-radius:34px;width:210px;height:140px;position:absolute;inset:28px auto auto 28px}.hero-photo{object-fit:cover;filter:saturate(.85)contrast(1.08);border-radius:42% 42% 10% 10%;width:72%;height:78%;position:absolute;inset:82px 26px 28px auto;box-shadow:0 24px 70px #0000006b}.shine{mix-blend-mode:screen;background:linear-gradient(100deg,#0000 38%,#ffffff52 48%,#0000 58%);animation:5s ease-in-out infinite shine;position:absolute;inset:-40%}.rating{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#090706c7;border:1px solid #f4cf9c3d;border-radius:28px;padding:18px 20px;font-weight:700;position:absolute;bottom:34px;left:34px;right:34px}.scroll-cue{text-transform:uppercase;letter-spacing:.18em;color:var(--muted);font-size:12px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.section-pad{padding:100px max(24px,50vw - 590px)}.brand-read{color:#17100d;background:#fff8ec;grid-template-columns:360px 1fr;align-items:center;gap:60px;display:grid}.brand-read h2,.section-title h2,.visit h2,.final h2{letter-spacing:-.035em;margin:12px 0;font-family:Fraunces,serif;font-size:clamp(38px,5vw,72px);line-height:.96}.brand-read p:not(.eyebrow){font-size:20px;line-height:1.75}.line-art svg{fill:none;stroke:#a7663e;stroke-width:4px;width:100%}.line-art path,.line-art circle{stroke-dasharray:700;stroke-dashoffset:700px;animation:5s infinite alternate forwards draw}.services{background:#0c0807;position:relative}.section-title{max-width:760px}.section-title p{text-transform:uppercase;letter-spacing:.18em;color:var(--champagne);font-size:12px;font-weight:700}.carousel-controls{gap:12px;display:flex;position:absolute;top:135px;right:max(24px,50vw - 590px)}.carousel-controls button,.gallery-stage button{color:#fff;background:#ffffff0f;border:1px solid #f4cf9c4d;border-radius:50%;width:50px;height:50px}.service-viewport{margin-top:46px;overflow:hidden}.service-track{transition:transform .55s cubic-bezier(.2,.8,.2,1);display:flex}.service-card{color:#170c07;background:#fff8ec;border-radius:36px;flex-direction:column;justify-content:space-between;min-width:calc(33.333% - 18px);min-height:360px;margin-right:27px;padding:30px;display:flex;box-shadow:0 30px 80px #00000038}.service-card h3{margin:10px 0;font-family:Fraunces,serif;font-size:34px;line-height:.95}.service-card p{text-transform:uppercase;letter-spacing:.16em;font-size:12px}.service-card span{line-height:1.55}.service-card strong{font-size:30px}.service-card a{color:#fff;background:#17100d;width:max-content}.service-card.rose{background:#f4d1ca}.service-card.bronze{background:#dba06c}.service-card.umber{background:#d8c0a4}.gallery{background:#17100d}.light h2{color:#fff}.gallery-stage{grid-template-columns:56px 1fr 56px;align-items:center;gap:22px;display:grid}.gallery-window{background:#090706;border:1px solid #f4cf9c40;border-radius:44px;overflow:hidden}.gallery-track{transition:transform .65s cubic-bezier(.2,.8,.2,1);display:flex}.gallery figure{min-width:100%;height:min(76vh,760px);margin:0;position:relative}.gallery img{object-fit:cover;width:100%;height:100%}.gallery figcaption{background:#090706b8;border-radius:999px;padding:12px 16px;position:absolute;bottom:24px;left:24px}.visit{color:#17100d;background:#fff8ec;grid-template-columns:1.2fr .8fr;gap:28px;display:grid}.visit-card,.hours{background:#fff;border-radius:38px;padding:34px;box-shadow:0 20px 80px #4b2a191f}.visit-actions a{color:#fff;background:#17100d}.hours dl{grid-template-columns:auto 1fr;gap:16px 20px;display:grid}.hours dt{font-weight:800}.hours dd{margin:0}.final{text-align:center;background:radial-gradient(circle at 50% 0,#f4cf9c42,#0000 45%),#090706;padding:120px 24px}.final .cta-row{justify-content:center}footer{color:var(--muted);border-top:1px solid #f4cf9c26;justify-content:center;align-items:center;gap:18px;padding:34px;display:flex}footer img{object-fit:cover;background:#fff;border-radius:20px;width:72px;height:48px}.buy-pill{z-index:30;color:#160d08;background:#f3c17e;border-radius:999px;align-items:center;gap:8px;padding:14px 18px;font-weight:900;display:inline-flex;position:fixed;bottom:18px;right:18px;box-shadow:0 16px 50px #00000061}@keyframes shine{0%,35%{transform:translate(-45%)rotate(12deg)}65%,to{transform:translate(45%)rotate(12deg)}}@keyframes draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.shine{display:none}}@media (width<=900px){:root{--card-step:100%}.desktop-nav,.header-actions .ghost,.header-actions .primary{display:none}.menu-btn{display:inline-flex}.topbar{top:10px}.hero{grid-template-columns:1fr;padding-top:112px}.hero-card{min-height:480px}.hero h1{font-size:clamp(48px,15vw,78px);line-height:.92}.brand-read,.visit{grid-template-columns:1fr}.carousel-controls{margin:24px 0;position:static}.service-card{min-width:100%;margin-right:0}.service-track{gap:0}.gallery-stage{grid-template-columns:42px 1fr 42px;gap:8px}.gallery figure{height:68vh}.section-pad{padding:72px 18px}.buy-pill{justify-content:center;left:18px;right:18px}.hero-photo{width:86%;height:72%;inset:105px 18px 24px auto}.hero-logo{width:150px;height:100px}}@media (width<=430px){.brand span{font-size:14px}.hero-card{border-radius:34px}.cta-row a{width:100%}.gallery-stage button{width:40px;height:40px}.hours dl{grid-template-columns:1fr}.hero h1{letter-spacing:-.03em}}
