:root{color-scheme:light;--color-bg:#fdfbf7;--color-bg-alt:#f7f3eb;--color-surface:#ffffff;--color-border-soft:#e5e0d8;--color-text:#1c1917;--color-text-muted:#6b6259;--color-primary:#d4af37;--color-primary-soft:#f3e6bf;--color-primary-contrast:#1c1917;--color-accent:#7b9982;--color-accent-soft:#d7e3d9;--color-success:#2e7d32;--color-warning:#e0a800;--color-danger:#c0392b;--gray-50:#faf7f2;--gray-100:#eee5da;--gray-200:#e0d6c7;--gray-300:#c7b8a4;--gray-400:#a39582;--gray-500:#827666;--gray-600:#645a4d;--gray-700:#4b4238;--gray-800:#332c25;--gray-900:#1c1917;--font-serif:"Playfair Display", "Cormorant Garamond", "Georgia", "Times New Roman", serif;--font-sans:"Poppins", "Avenir Next", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-size-xs:0.75rem;--font-size-sm:0.8125rem;--font-size-base:1rem;--font-size-md:1.0625rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-size-3xl:2.5rem;--font-size-4xl:3rem;--line-height-tight:1.15;--line-height-snug:1.3;--line-height-normal:1.5;--line-height-relaxed:1.7;--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.5rem;--space-10:3rem;--space-12:3.5rem;--space-14:4rem;--space-16:4.5rem;--space-20:5rem;--space-24:6rem;--space-28:7rem;--space-32:8rem;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:999px;--shadow-xs:0 1px 2px rgba(17,24,39,0.04);--shadow-sm:0 4px 10px rgba(15,23,42,0.06);--shadow-md:0 16px 40px rgba(15,23,42,0.12);--shadow-soft-brass:0 18px 55px rgba(35,24,10,0.18);--transition-fast:150ms ease-out;--transition-normal:220ms ease-out;--transition-slow:320ms ease-out}*,*::before,*::after{box-sizing:border-box}*{margin:0;padding:0}html,body{min-height:100%}html{scroll-behavior:smooth;text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}button{border:none;background:none;padding:0;cursor:pointer}a{text-decoration:none;color:inherit}p{margin-bottom:var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-md);line-height:var(--line-height-relaxed)}p:last-child{margin-bottom:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:500;color:var(--color-text);line-height:var(--line-height-tight);margin-bottom:var(--space-4)}h1{font-size:var(--font-size-4xl);letter-spacing:0.01em}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base);text-transform:uppercase;letter-spacing:0.14em}main{min-height:60vh}section{padding:var(--space-16) 0}section + section{border-top:1px solid var(--color-border-soft)}.container{width:100%;max-width:1120px;margin:0 auto;padding:0 var(--space-5)}@media (min-width:1280px){.container{max-width:1200px}}.grid{display:grid;gap:var(--space-8)}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:768px){.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}.grid > *{min-width:0;max-width:100%}}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-col{display:flex;flex-direction:column}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}a,button{transition:color var(--transition-normal),background-color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-fast)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto !important;animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:0.7rem 1.8rem;border-radius:999px;border:1px solid transparent;font-size:var(--font-size-sm);letter-spacing:0.14em;text-transform:uppercase;font-weight:500;line-height:1.1;white-space:nowrap;background-color:var(--color-primary);color:var(--color-primary-contrast);box-shadow:var(--shadow-sm)}.btn-primary{background:linear-gradient(135deg,#d4af37,#f5d676);border-color:rgba(140,108,30,0.3);color:var(--color-primary-contrast)}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft-brass);filter:saturate(1.04)}.btn-secondary{background-color:rgba(123,153,130,0.09);border-color:rgba(123,153,130,0.4);color:var(--color-text)}.btn-secondary:hover{background-color:rgba(123,153,130,0.16);box-shadow:var(--shadow-sm)}.btn-ghost{background-color:transparent;border-color:var(--color-border-soft);color:var(--color-text-muted)}.btn-ghost:hover{background-color:rgba(255,255,255,0.8)}.btn-sm{padding:0.45rem 1.2rem;font-size:var(--font-size-xs)}.btn-lg{padding:0.9rem 2.4rem;font-size:var(--font-size-md)}.btn[disabled],.btn:disabled{opacity:0.55;cursor:not-allowed;box-shadow:none;transform:none}.input,.textarea,.select{width:100%;padding:0.75rem 0.9rem;border-radius:var(--radius-md);border:1px solid var(--color-border-soft);background-color:rgba(255,255,255,0.95);font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text)}.input::placeholder,.textarea::placeholder{color:var(--color-text-muted);opacity:0.7}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:rgba(123,153,130,0.9);box-shadow:0 0 0 1px rgba(123,153,130,0.75)}.input[aria-invalid="true"],.textarea[aria-invalid="true"]{border-color:var(--color-danger)}.field{display:flex;flex-direction:column;gap:0.35rem;margin-bottom:var(--space-4)}.field-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.16em;color:var(--color-text);font-weight:500}.field-hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.card{background-color:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border-soft);box-shadow:var(--shadow-xs);padding:var(--space-6)}.card-elevated{box-shadow:var(--shadow-sm)}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:0.25rem 0.75rem;font-size:var(--font-size-xs);letter-spacing:0.12em;text-transform:uppercase;border:1px solid rgba(212,175,55,0.4);background-color:rgba(253,251,247,0.9);color:var(--color-text-muted)}.badge-soft{border-radius:999px;padding:0.2rem 0.6rem;font-size:var(--font-size-xs);background-color:var(--color-accent-soft);color:var(--color-text)}.layout-shell{min-height:100vh;display:flex;flex-direction:column;width:100%}.layout-main{flex:1 0 auto;width:100%}.site-header{position:sticky;top:0;z-index:40;background-color:rgba(253,251,247,0.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(229,224,216,0.9)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;padding:0.9rem 0}.brand-mark{display:flex;align-items:flex-end;gap:0.4rem}.brand-title{font-family:var(--font-serif);font-size:1.45rem;letter-spacing:0.18em;text-transform:uppercase}.brand-subtitle{font-size:0.62rem;text-transform:uppercase;letter-spacing:0.2em;color:var(--color-text-muted)}.nav{display:flex;align-items:center;gap:1.75rem;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.16em}.nav a{position:relative;padding-bottom:0.25rem;color:var(--color-text-muted)}.nav a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:linear-gradient(90deg,#d4af37,#f0cf7a);transition:width var(--transition-normal)}.nav a:hover{color:var(--color-text)}.nav a:hover::after{width:100%}.nav a[aria-current="page"]{color:var(--color-text)}.nav a[aria-current="page"]::after{width:40%}.hero{padding:var(--space-20) 0 var(--space-16);background:radial-gradient(circle at top left,rgba(244,227,190,0.45) 0,transparent 45%),radial-gradient(circle at top right,rgba(166,188,166,0.3) 0,transparent 50%),var(--color-bg)}.hero-grid{display:grid;grid-template-columns:3fr 2fr;column-gap:var(--space-14);align-items:center}@media (max-width:960px){.hero-grid{grid-template-columns:1fr;row-gap:var(--space-10)}}.hero-eyebrow{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.18em;color:var(--color-text-muted);margin-bottom:var(--space-2)}.hero-title{font-family:var(--font-serif);font-size:3.1rem;line-height:1.05;letter-spacing:0.03em;margin-bottom:var(--space-4)}@media (max-width:768px){.hero-title{font-size:2.35rem}}.hero-lede{font-size:var(--font-size-md);max-width:32rem;margin-bottom:var(--space-6)}.hero-ctas{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-4)}.hero-meta{display:flex;flex-wrap:wrap;gap:var(--space-6);font-size:var(--font-size-xs);color:var(--color-text-muted)}.hero-meta-item{display:flex;flex-direction:column;gap:0.15rem}.hero-meta-label{text-transform:uppercase;letter-spacing:0.16em}.hero-meta-value{font-family:var(--font-serif);font-size:var(--font-size-lg);color:var(--color-text)}.hero-visual{position:relative}.hero-card{position:relative;border-radius:var(--radius-md);border:1px solid var(--color-border-soft);background:linear-gradient(135deg,#fdfbf7,#f3ebdf);box-shadow:var(--shadow-soft-brass);overflow:hidden;padding:0.9rem}.hero-media{position:relative;border-radius:calc(var(--radius-md) - 4px);overflow:hidden;background-color:var(--gray-800);min-height:260px}.hero-media-image{width:100%;height:100%;object-fit:cover;display:block}.hero-media-overlay{position:absolute;inset:auto 0 0 0;padding:1.1rem;background:linear-gradient(to top,rgba(12,10,8,0.78),transparent 70%);color:#fdfbf7;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:0.35rem}.hero-overlay-text{font-size:var(--font-size-xs);max-width:16rem;line-height:1.5}.hero-overlay-title{font-family:var(--font-serif);font-size:var(--font-size-lg);margin-bottom:0.15rem}.hero-overlay-caption{opacity:0.85;display:block;line-height:1.5;margin:0}.hero-stat-badge{position:absolute;top:1.4rem;right:1.4rem;display:flex;flex-direction:column;align-items:flex-start;gap:0.1rem;padding:0.55rem 0.9rem;border-radius:999px;background:rgba(7,6,4,0.88);backdrop-filter:blur(10px);border:1px solid rgba(245,214,118,0.5);color:#fdfbf7;font-size:var(--font-size-xs);box-shadow:0 14px 30px rgba(7,6,4,0.6)}.hero-stat-label{text-transform:uppercase;letter-spacing:0.16em;opacity:0.8}.hero-stat-value{font-family:var(--font-serif);font-size:var(--font-size-md)}.hero-stat-tag{font-size:0.65rem;letter-spacing:0.12em;text-transform:uppercase;opacity:0.85}.hero-footnote{position:absolute;left:1.4rem;right:1.4rem;bottom:1.4rem;z-index:2;font-size:var(--font-size-xs);line-height:1.45;color:rgba(248,244,236,0.88)}.hero-media:has(>.hero-footnote) .hero-media-overlay{padding-bottom:2.85rem}.hero-media-overlay .hero-footnote,.hero-overlay-text .hero-footnote{position:static;left:auto;right:auto;bottom:auto;margin-top:0.5rem;opacity:0.9}.layout-section-header{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-6);margin-bottom:var(--space-10)}.layout-section-eyebrow{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.18em;color:var(--color-text-muted);margin-bottom:var(--space-2)}.layout-section-title{font-family:var(--font-serif);font-size:var(--font-size-3xl);letter-spacing:0.04em}.layout-section-intro{max-width:32rem;font-size:var(--font-size-sm);color:var(--color-text-muted)}@media (max-width:768px){.layout-section-header{flex-direction:column;align-items:flex-start}}.list-inline{display:flex;flex-wrap:wrap;gap:0.45rem;font-size:var(--font-size-xs)}.list-inline li{padding:0.15rem 0.6rem;border-radius:999px;border:1px solid rgba(229,224,216,0.9);background-color:rgba(253,251,247,0.9)}.list-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-10);row-gap:0.65rem;font-size:var(--font-size-sm)}@media (max-width:640px){.list-columns{grid-template-columns:1fr}}.table-simple{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.table-simple th,.table-simple td{padding:0.6rem 0.4rem;border-bottom:1px solid var(--color-border-soft);text-align:left}.table-simple th{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.16em;color:var(--color-text-muted);font-weight:500}.table-simple tbody tr:hover{background-color:rgba(247,243,235,0.7)}.footer{border-top:1px solid var(--color-border-soft);padding:var(--space-10) 0 var(--space-6);font-size:var(--font-size-xs);color:var(--color-text-muted)}.footer-top{display:flex;flex-wrap:wrap;row-gap:var(--space-6);column-gap:var(--space-16);margin-bottom:var(--space-8)}.footer-col{min-width:180px}.footer-title{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.18em;margin-bottom:var(--space-3);color:var(--color-text)}.footer-links{display:flex;flex-direction:column;gap:0.5rem}.footer-links a{color:var(--color-text-muted)}.footer-links a:hover{color:var(--color-text)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap}.tag-cuisine{border-radius:999px;padding:0.18rem 0.75rem;font-size:var(--font-size-xs);border:1px solid rgba(229,224,216,0.95);background-color:rgba(249,243,233,0.9);text-transform:uppercase;letter-spacing:0.16em;color:var(--color-text-muted)}.event-chip{display:inline-flex;align-items:center;gap:0.35rem;padding:0.25rem 0.8rem;border-radius:999px;background-color:rgba(247,243,235,0.9);border:1px solid var(--color-border-soft);font-size:var(--font-size-xs)}.event-chip-dot{width:6px;height:6px;border-radius:999px;background-color:var(--color-accent)}.reservation-panel{border-radius:var(--radius-lg);border:1px solid var(--color-border-soft);background:linear-gradient(135deg,rgba(247,243,235,0.98),rgba(255,255,255,0.98));box-shadow:var(--shadow-sm);padding:var(--space-6)}.reservation-panel-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.reservation-note{font-size:var(--font-size-xs);color:var(--color-text-muted)}.badge-evening{border-radius:999px;padding:0.2rem 0.7rem;font-size:var(--font-size-xs);background-color:rgba(7,6,4,0.9);color:#fdfbf7;letter-spacing:0.14em;text-transform:uppercase}.pill-menu{display:inline-flex;align-items:center;gap:0.35rem;padding:0.25rem 0.8rem;border-radius:999px;background-color:rgba(215,227,217,0.42);border:1px solid rgba(123,153,130,0.55);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.16em;color:var(--color-text)}.pill-menu-dot{width:6px;height:6px;border-radius:999px;background-color:var(--color-accent)}.salon-chip{display:inline-flex;align-items:center;gap:0.35rem;padding:0.2rem 0.7rem;border-radius:999px;border:1px solid rgba(19,15,10,0.5);background:rgba(12,10,8,0.96);color:#fdfbf7;font-size:var(--font-size-xs);letter-spacing:0.15em;text-transform:uppercase}.salon-chip-dot{width:5px;height:5px;border-radius:999px;background-color:#f5d676}.flow-vertical{display:flex;flex-direction:column;gap:var(--space-4)}.flow-vertical-lg{display:flex;flex-direction:column;gap:var(--space-6)}.mt-0{margin-top:0}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mt-10{margin-top:var(--space-10)}.mb-0{margin-bottom:0}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-muted{color:var(--color-text-muted)}.text-center{text-align:center}.text-right{text-align:right}.uppercase{text-transform:uppercase;letter-spacing:0.16em}.weight-medium{font-weight:500}.bg-alt{background-color:var(--color-bg-alt)}.bg-surface{background-color:var(--color-surface)}.bordered{border:1px solid var(--color-border-soft);border-radius:var(--radius-md)}ul{list-style:none !important}.nav-toggle{flex-direction:column}
html, body {
  overflow-x: clip;
  max-width: 100%;
  min-height: 100%;
  height: auto;
}

.layout-main {
  flex: 1 0 auto;
  min-height: min-content;
}

img, video, svg {
  max-width: 100%;
  height: auto;
}
