.site{--bg:#faf6ef;--surface:#fff;--ink:#1f1a17;--muted:#6b625b;--line:#e6ddd0;--accent:#8a3b1e;--on-accent:#fff;--radius:14px;--font-title:var(--font-serif),Georgia,serif;--font-body:var(--font-sans),system-ui,sans-serif;background:var(--bg);color:var(--ink);font-family:var(--font-body);line-height:1.6;min-height:100vh}.site.theme-chic{--bg:#12110f;--surface:#1c1a17;--ink:#f3ede2;--muted:#a79f92;--line:#2e2b26;--accent:#c9a063;--on-accent:#14120f;--radius:4px}.site.theme-cafe{--bg:#fbf8f3;--surface:#fff;--ink:#2a2420;--muted:#75695f;--line:#ece4d8;--accent:#2f6b4f;--radius:20px;--font-title:var(--font-sans),system-ui,sans-serif}.site.theme-plage{--bg:#f7fafb;--surface:#fff;--ink:#14303a;--muted:#5d7680;--line:#dbe7ea;--accent:#0f6f86;--radius:22px}.site.has-accent,.site.theme-chic.has-accent{--accent:var(--site-accent)}.site.theme-chic.has-accent{--accent:#c9a063}.site *{box-sizing:border-box}.site a{color:inherit}.site h1,.site h2,.site h3{font-family:var(--font-title);font-weight:600;line-height:1.15;margin:0;text-wrap:balance}.site p{margin:0;text-wrap:pretty}.wrap{max-width:1080px;margin:0 auto;padding:0 20px}.preview-bar{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:#17130f;color:#fff;font-family:var(--font-sans),system-ui,sans-serif}.preview-bar .wrap{display:flex;align-items:center;gap:14px;justify-content:space-between;padding-top:10px;padding-bottom:10px;flex-wrap:wrap}.preview-bar p{font-size:14px;line-height:1.35}.preview-bar p span{opacity:.7}.preview-bar a{background:#fff;color:#17130f;text-decoration:none;font-weight:600;font-size:14px;padding:9px 16px;border-radius:999px;white-space:nowrap}.hero{position:relative;min-height:min(78vh,720px);display:flex;flex-direction:column;color:#fff;background:#2a2420;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.hero:after,.hero>img{position:absolute;inset:0}.hero:after{content:"";background:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.1) 30%,rgba(0,0,0,.72))}.hero.no-photo{background:var(--accent)}.hero.no-photo:after{background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.45))}.nav{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;max-width:1080px;width:100%;margin:0 auto}.nav .brand{font-family:var(--font-title);font-size:19px;font-weight:600;text-decoration:none}.nav nav{display:flex;gap:22px;font-size:14.5px}.nav nav a{text-decoration:none;opacity:.9}.nav nav a:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}@media (max-width:720px){.nav nav a:not(.keep){display:none}}.hero-body{position:relative;z-index:2;margin-top:auto;padding:40px 20px 56px;max-width:1080px;width:100%;margin-left:auto;margin-right:auto}.kicker{font-size:13px;letter-spacing:.14em;text-transform:uppercase;opacity:.85;margin-bottom:14px}.hero h1{font-size:clamp(38px,7vw,72px);letter-spacing:-.01em}.hero .tagline{font-size:clamp(17px,2.2vw,22px);margin-top:14px;max-width:34em;opacity:.93}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:28px}.rating{font-size:14.5px;opacity:.92}.btn,.rating b{font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:var(--on-accent)!important;text-decoration:none;font-size:16px;padding:14px 24px;border-radius:999px;border:0;cursor:pointer;font-family:inherit;transition:filter .15s,transform .15s}.theme-chic .btn{border-radius:2px;letter-spacing:.04em}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:default}.btn.ghost{background:rgba(255,255,255,.14);color:#fff!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.35)}.section{padding:72px 0}.section.alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section h2{font-size:clamp(28px,4vw,40px);margin-bottom:22px}.eyebrow{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:10px}.about{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:56px;gap:56px;align-items:start}.about .text p+p{margin-top:16px}.about .text{font-size:18px;color:var(--ink)}.highlights{display:grid;grid-gap:14px;gap:14px}.highlight{padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.section.alt .highlight{background:var(--bg)}.highlight h3{font-size:18px;margin-bottom:4px}.highlight p{color:var(--muted);font-size:15.5px}@media (max-width:820px){.about{grid-template-columns:1fr;gap:32px}.section{padding:52px 0}}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:12px;gap:12px}.gallery.few{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.gallery a{display:block;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;background:var(--line)}.gallery a:first-child:nth-last-child(n+5){grid-column:span 2;grid-row:span 2;aspect-ratio:auto}.gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.gallery a:hover img{transform:scale(1.03)}@media (max-width:560px){.gallery{grid-template-columns:1fr 1fr}}.booking-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-gap:48px;gap:48px;align-items:start}.booking-grid .lead{color:var(--muted);font-size:17px}.booking-grid .call{margin-top:18px;font-size:16px}.booking-grid .call a{font-weight:600;color:var(--accent);text-decoration:none}@media (max-width:820px){.booking-grid{grid-template-columns:1fr;gap:24px}}.bk{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);padding:24px}.section.alt .bk{background:var(--bg)}.bk-label{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:20px 0 10px}.bk-label:first-child{margin-top:0}.bk-row{flex-wrap:wrap}.bk-row,.bk-scroll{display:flex;gap:8px}.bk-scroll{overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.chip{flex:0 0 auto;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:12px;padding:9px 13px;font:inherit;font-size:15px;cursor:pointer;min-width:44px;text-align:center;line-height:1.25}.chip small{display:block;font-size:12px;color:var(--muted);text-transform:capitalize}.chip:hover,.chip[aria-pressed=true]{border-color:var(--accent)}.chip[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.chip[aria-pressed=true] small{color:inherit;opacity:.85}.bk-service{font-size:14px;color:var(--muted);margin:12px 0 8px}.bk-empty{color:var(--muted);font-size:15.5px;padding:8px 0}.bk form{grid-gap:12px;margin-top:4px}.bk .two,.bk form{display:grid;gap:12px}.bk .two{grid-template-columns:1fr 1fr;grid-gap:12px}@media (max-width:520px){.bk .two{grid-template-columns:1fr}.bk{padding:18px}}.bk label{display:grid;grid-gap:5px;gap:5px;font-size:14px;color:var(--muted)}.bk input,.bk select,.bk textarea{font:inherit;font-size:16px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 12px;width:100%}.section.alt .bk input,.section.alt .bk textarea{background:var(--surface)}.bk input:focus,.bk textarea:focus,.btn:focus-visible,.chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bk .hp{position:absolute;left:-9999px}.bk-summary{font-weight:600;font-size:17px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);text-transform:none}.bk-error{color:#b3261e;font-size:14.5px}.theme-chic .bk-error{color:#ff8a80}.bk-note{font-size:13.5px;color:var(--muted)}.bk-done{text-align:center;padding:18px 6px}.bk-done .tick{width:54px;height:54px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;margin:0 auto 14px;font-size:26px}.bk-done h3{font-size:24px;margin-bottom:8px}.bk-done p{color:var(--muted)}.bk-done .demo{margin-top:14px;font-size:14px;padding:10px 12px;border:1px dashed var(--line);border-radius:10px}.linkbtn{background:none;border:0;color:var(--accent);font:inherit;font-size:14.5px;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:3px}.unlock{display:inline-flex;align-items:center;justify-content:center;background:#b4451f;color:#fff!important;text-decoration:none;font-family:var(--font-sans),system-ui,sans-serif;font-weight:600;font-size:15px;padding:12px 20px;border-radius:10px;transition:background .15s}.unlock:hover{background:#9c3a18}.unlock:focus-visible{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px #b4451f}.locked{position:relative;margin-top:12px;border-radius:var(--radius);overflow:hidden}.locked-content{filter:blur(14px) saturate(.7);opacity:.55;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.locked-content span{display:block;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;background:var(--line)}.faq .locked{margin-top:0}.faq .locked-content{filter:blur(5px);opacity:.5;min-height:250px}.locked-card{position:absolute;inset:0;margin:auto;width:min(430px,calc(100% - 32px));height:-moz-fit-content;height:fit-content;background:#fff;color:#1c1917;border:1px solid #e4dfd7;border-radius:14px;padding:24px 24px 22px;text-align:center;box-shadow:0 18px 40px -18px rgba(0,0,0,.45),0 2px 6px rgba(0,0,0,.08);font-family:var(--font-sans),system-ui,sans-serif}.locked-card .lock{color:#b4451f;margin-bottom:8px}.site .locked-card h3{font-family:var(--font-serif),Georgia,serif;font-size:21px;color:#1c1917}.locked-card p{font-size:15px;line-height:1.5;color:#6f6a64;margin:8px 0 16px}.option-note{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.option-note p{font-size:15px;color:var(--muted);margin-bottom:12px}.option-note b{color:var(--ink)}.by-phone{text-align:center}.by-phone .lead{color:var(--muted);font-size:17px;margin-bottom:22px}.unlock-band{background:#17130f;color:#fff;padding:64px 0;font-family:var(--font-sans),system-ui,sans-serif}.unlock-band .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-gap:48px;gap:48px;align-items:center}.site .unlock-band h2{font-family:var(--font-serif),Georgia,serif;font-size:clamp(28px,4vw,40px);color:#fff}.unlock-band p{color:#cfc8bf;font-size:17px;line-height:1.55;margin-top:14px;max-width:34em}.unlock-offer{background:#221d18;border:1px solid #3a332b;border-radius:14px;padding:22px}.unlock-offer p{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin:0;padding:10px 0;border-bottom:1px solid #3a332b;font-size:15.5px;max-width:none}.unlock-offer p b{color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.unlock-offer .unlock{width:100%;margin-top:18px;padding:14px 20px;font-size:16px}.unlock-offer small{display:block;text-align:center;color:#a69d92;font-size:13px;margin-top:10px}@media (max-width:820px){.unlock-band{padding:48px 0 56px}.unlock-band .wrap{grid-template-columns:1fr;gap:28px}}@media (max-width:720px){.preview-bar a{width:100%;text-align:center}}.info{display:grid;grid-template-columns:1fr 1fr;grid-gap:48px;gap:48px}@media (max-width:820px){.info{grid-template-columns:1fr;gap:32px}}.hours{width:100%;border-collapse:collapse;font-size:16px}.hours td{padding:9px 0;border-bottom:1px solid var(--line)}.hours td:first-child{text-transform:capitalize}.hours td:last-child{text-align:right;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hours tr.today td{font-weight:600;color:var(--ink)}.address{font-size:17px;margin-bottom:14px}.map{width:100%;height:260px;border:1px solid var(--line);border-radius:var(--radius);display:block}.theme-chic .map{filter:grayscale(.4) brightness(.85)}.links{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px;font-size:15px}.links a{color:var(--accent);text-underline-offset:3px}.faq{max-width:760px}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq summary{cursor:pointer;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:16px}.faq summary:after{content:"+";color:var(--accent);font-size:22px;line-height:1}.faq details[open] summary:after{content:"–"}.faq summary::-webkit-details-marker{display:none}.faq details p{margin-top:10px;color:var(--muted)}.foot{padding:36px 0 44px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.foot .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.foot strong{color:var(--ink);font-family:var(--font-title);font-size:17px;font-weight:600}.foot details{max-width:520px}.foot summary{cursor:pointer}.foot details p{margin-top:8px;font-size:13px}.mobile-cta{display:none}@media (max-width:720px){.mobile-cta{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:20;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line)}.mobile-cta .btn{flex:1 1;padding:13px 10px;font-size:15.5px}.mobile-cta .btn.call{flex:0 0 auto;background:transparent;color:var(--ink)!important;border:1px solid var(--line)}.foot{padding-bottom:96px}}@media (prefers-reduced-motion:reduce){.site *{transition:none!important;scroll-behavior:auto!important}}.locked .gallery{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:560px){.locked .gallery{grid-template-columns:1fr 1fr}.locked-card{padding:20px 18px}}